1樓:匿名使用者
暫存器主要有8種:
1通用暫存器
2指標與變址暫存器
3段暫存器
4標誌暫存器
5控制暫存器
6系統地址暫存器
7除錯暫存器
8測試暫存器
430有很多暫存器,你得看手冊。430的優勢在它的低功耗.......
2樓:匿名使用者
我以前倒是做過,不過程式還有點問題,調時間的時候容易過界,但正常走時候就正常了。開發環境用的iar,微控制器用f149,顯示用的1602的四線模式。
你自己看著改程式吧,其實我也是51上移植過去的。
悲劇了,帖不下了.我帖在我部落格裡了啊,自己去找吧.
#include
#include "ds1302.h"
#include "lcd1602x4_mps.h"
#define ds1302_second 0x81 //時鐘晶片的暫存器位置,存放時間
#define ds1302_minute 0x83
#define ds1302_hour 0x85
#define ds1302_week 0x8b
#define ds1302_day 0x87
#define ds1302_month 0x89
#define ds1302_year 0x8d
unsigned char datestring[11],timestring[9],week_value[2],tempbuffer[7]; //
char hide_sec,hide_min,hide_hour,hide_day,hide_week,hide_month,hide_year;
char done,count,temp,flag,up_flag,down_flag;
//unsigned int temp_value=0,temp_max=0;temp_min=0; //溫度值
void datetostr(void) //將時間年,月,日,星期資料轉換成液晶顯示字串,放到陣列裡datestring
else
datestring[4] = '/';
if(hide_month<2)
else
datestring[7] = '/';
if(hide_day<2)
else
if(hide_week<2)
else
week_value[1] = '\0';
datestring[10] = '\0'; //字串末尾加 '\0' ,判斷結束字元
}void timetostr(void) //將時,分,秒資料轉換成液晶顯示字元放到陣列 timestring;
else
timestring[2] = ':';
if(hide_min<2)
else
timestring[5] = ':';
if(hide_sec<2)
else
datestring[8] = '\0';
}void show_time() //液晶顯示程式
void outkey() //跳出調整模式,返回預設顯示
void upkey()//升序按鍵
while(!(p1in&bit1));
delay_nms(2); }}
void downkey()//降序按鍵
while(!(p1in&bit2));
delay_nms(2); }}
void setkey()//模式選擇按鍵
}void keydone()//按鍵功能執行
setkey(); //掃描模式切換按鍵
switch(count)
hide_sec++; //位閃計數
if(hide_sec>3)
hide_sec=0;
show_time(); //液晶顯示資料
}while(count==2);break;
case 2:do //count=3,調整分
hide_min++;
if(hide_min>3)
hide_min=0;
show_time();
}while(count==3);break;
case 3:do //count=4,調整小時
hide_hour++;
if(hide_hour>3)
hide_hour=0;
show_time();
}while(count==4);break;
case 4:do //count=5,調整星期
hide_week++;
if(hide_week>3)
hide_week=0;
show_time();
}while(count==5);break;
case 5:do //count=6,調整日
hide_day++;
if(hide_day>3)
hide_day=0;
show_time();
}while(count==6);break;
case 6:do //count=7,調整月
hide_month++;
if(hide_month>3)
hide_month=0;
show_time();
}while(count==7);break;
case 7:do //count=8,調整年
hide_year++;
if(hide_year>3)
hide_year=0;
show_time();
}while(count==8);break;
case 8: count=0;hide_year=0; //count8, 跳出調整模式,返回預設顯示狀態
second=dataread(0x80);
datawrite(0x8e,0x00); //寫入允許
datawrite(0x80,second&0x7f);
datawrite(0x8e,0x80); //禁止寫入
done=0; //temp_max=0;sund=1;
break; //count=7,開啟中斷,標誌位置0並退出
default:break;}}
void rtcinit ()
void sysinit ()
void main ()}}
三菱PLC資料暫存器的資料用GX Developer怎麼改
利用gx developer軟體,在bai程式設計狀態下 如果dud裡面的常數zhi不變,dao把常數輸入到d就可以了,內如果再修 改,有兩種方法。容1 用程式設計軟體重新修改常數,重新傳送的d。2 如果plc和人機介面通訊,可以隨時修改d裡面的引數,會更加方便。三菱plc資料暫存器怎麼修改資料值 ...
簡述路由器的啟動過程,並說明配置暫存器2102和2142的作
每一個路由器的主晶片不同,暫存器也就不同。這個你自己要檢視對應的晶片手冊 即datasheet 上電無非常就是以下幾個過程.上電,時鐘順序 復位 載入i2c設定 亮燈。每個晶片的設計考慮都是一樣的。你自己要檢視datasheet.簡述路由器的啟動過程?1 開機自來檢 power on self,po...
微控制器GPIO相關的暫存器及其作用。(本人剛接觸微控制器,忘高
1 gpio 普 通用 途 的輸入輸出 數字 埠。2 通常沒有其他數字外設的功能複用 如uart口,spi口,定時器 的普通管腳。3 輸入時,考慮開漏方式,弱上拉。此時該管腳輸出通常需置1。以便於檢測管腳電平。4 輸出時,可以開漏方式外加上拉,或者推輓輸出提供或灌入較大電流。5 還應考慮介面電平標準...