新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51手記之winbond(一)

        51手記之winbond(一)

        作者: 時間:2016-11-10 來源:網絡 收藏
        winbond系列51單片機基于標準8052指令結構,這里以兩種常用型號為例進行說明:單串口型號W78E58和雙串口型號W77E58;首先介紹一下W78E58系列單片機

        1.基本特性

        本文引用地址:http://www.104case.com/article/201611/317149.htm

        采用與標準8052相同的指令集,全靜態設計的低功耗CMOS 8位微處理器

        時鐘選擇:既可使用一個晶體振蕩器,也可使用一個外部時鐘

        1)使用晶體振蕩器:內置有晶體振蕩器,使用時需在XTAL1和XTAL2之間外接一個石英晶體,同時兩個管腳對地需連一個負載電容

        2)使用外部時鐘:外部時鐘源(CMOS型輸入)接入XTAL1,管腳XTAL2懸空,時鐘頻率由內部二分頻。

        2.存儲器

        1)程序存儲器

        32KB帶ISP功能的FLASH EPROM(APROM),4KB輔助ROM(裝載程序存儲器)

        2)數據存儲器

        512字節RAM(其中256字節片內數據RAM,256字節片外數據XRAM)

        復位后,256字節的XRAM是關閉的,可以通過下面的方法打開:

        CHPENR=0X87;

        CHPENR=0X59;

        CHPCON |= 0X10;

        CHPENR=0X00;

        3.通用I/O口

        4個8位雙向I/O口,其中P0為雙向三態I/O口,P1、P2、P3為準雙向口

        P4口是一個4位可編程I/O口,有4種工作模式,其中模式0為與P1口功能相同的雙向I/O口,模式1-3下為外部設備的讀寫片選信號。

        P4口的工作模式由P4CONA、P4CONA選擇,如需設置P4口為通用IO口,需作如下設置:P4CONA=0X00,P4CONB=0X00;

        4.中斷系統

        有8個中斷源,2級中斷優先級,比標準51增加了定時器2和外部中斷2和外部中斷3

        中斷源中斷向量中斷優先權

        外部中斷0 03H 0

        定時/計數器0 0BH 1

        外部中斷1 13H 2

        定時/計數器1 1BH 3

        串行口 23H 4

        定時/計數器2 2BH 5

        外部中斷2 33H 6

        外部中斷3 3BH 7

        外部中斷2,3與標準51的INT0和INT1功能相似,由寄存器XICON控制。

        5.定時器

        定時器0,1,3分別包含2個8位數據寄存器。RCAP2H,RCAP2L是定時器2的重裝/捕捉寄存器

        TCON和TMOD控制定時器0,1;T2CON對定時器2進行控制;

        定時器2 有3種運行方式:捕捉,自動重裝,波特率發生器。在捕捉和自動重裝模式下時鐘速度與定時器0,1相同。通過T2CON.RCLK和T2CON.TCLK來選擇使用定時器1還是定時器2作為串口的波特率發生器,T2CON.RCLK和T2CON.TCLK均為1時選擇定時器2為串口波特率發生器,T2CON.RCLK和T2CON.TCLK均為0時選擇定時器1為串口的波特率發生器。

        T2CON:定時器控制寄存器

        位地址

        CF

        CE

        CD

        CC

        CB

        CA

        C9

        C8

        位符號

        TF2

        EXF2

        RCLK

        TCLK

        EXEN2

        TR2

        C/T2

        CP/RL2

        TF2:T2溢出標記

        當T2溢出時TF2=1,TD2只能用軟件清除

        當RCLK=1或TCLK=1時,TF2將不置位

        EXF2:T2外部標記

        當EXEN2=1時,T2EX/P1.1引腳上的負跳變引起T2的捕捉/重裝操作,此時EXF2=1。在T2中斷允許時,EXF2=1將引起中斷,EXF2只能用軟件清除。在T2的向上、向下計數模式下(DCEN=1)EXF2的置位將不引起中斷。

        RCLK:接收時鐘允許

        當RCLK=1時,T2的溢出脈沖可用作串行口的接收時鐘信號,適于串行口模式1、3當RCLK=0時,T1的溢出脈沖用作串行口接收時鐘信號

        TCLK:發送時鐘允許

        EXEN2:T2外部事件(引起捕捉/重裝的外部信號)允許

        當EXEN2=1時,如果T2沒有作串行時鐘輸出(即RCLK+TCLK=0),則在T2EX/P1.1引腳跳變將引起T2的捕捉/重裝操作;

        當EXEN2=0時,在T2EX引腳的負跳變將不起作用

        TR2:T2的啟動/停止控制

        C/T2:計數定時

        CP/RL2:捕捉/重裝選擇

        當CP/RL2=1且EXEN2=1時,T2EX/P1.1引腳的負跳變將引起捕捉操作

        當CP/RL2=0且EXEN2=1時,T2EX/P1.1引腳的負跳變將引起重裝操作

        當CP/RL2=0且EXEN2=0時,T2的溢出將引起T2的自動重裝操作

        當RCLK+TCLK=1時,CP/RL2控制位不起作用,T2被強制工作于重裝方式。重裝方式發生于T2溢出時,常用來作波特率發生器。

        6.串行口

        串行口與標準51完全相同,可選擇定時器1或定時器2作為波特率發生器。波特率發生器選擇通過設置定時器相關寄存器實現。



        關鍵詞: 51手記winbon

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 临漳县| 日照市| 柏乡县| 松阳县| 平乡县| 泰安市| 嘉禾县| 金溪县| 葵青区| 思茅市| 蛟河市| 禄丰县| 囊谦县| 扎兰屯市| 蕲春县| 新蔡县| 宣城市| 洛宁县| 涟水县| 墨江| 南和县| 剑川县| 沅江市| 禹城市| 高青县| 含山县| 东城区| 拉孜县| 宝应县| 林周县| 阜阳市| 泾阳县| 邳州市| 个旧市| 永吉县| 舟山市| 班玛县| 外汇| 枣强县| 诸暨市| 青州市|