N76E003手冊閱讀


 

七、I/O端口結構及工作模式
最多支持26個可位尋址的通用I/O引腳,分4組,P0到P3,端口控制寄存器(Px)
端口控制寄存器的寫和讀有不同的意思,寫端口控制寄存器設置輸出鎖存邏輯值,
讀端口引腳的邏輯狀態
四種I/O模式:准雙向模式(標准8051端口結構)、推挽輸出、輸入和開漏模式。(P2.0不能配置)
特殊端口寄存器PxM1和PxM2選擇端口Px的I/O模式:
復位后,默認配置是高阻輸入模式
PxM1.n PxM2.n I/O類型 x:0、1、2、3
0 0 准雙向
0 1 推挽輸出
1 0 輸入(高阻)
1 1 開漏
PxS寄存器 TTL電平輸入或施密特觸發輸入(抗干擾能力更好)
PxSR寄存器 輸出斜率控制寄存器 默認 慢斜率

配置RPD(CONFIG0.2)為0,P2.0被配置為輸入引腳(輸入模式和施密特觸發模式,通過P20UP(P2S.7)
使能內部上拉電阻);RPD為編程,P2.0為外部復位引腳(內部上拉電阻有效,讀P2.0的值為0)

**准雙向模式

**推挽模式
推挽輸出模式用於需要從端口輸出大電流時的應用

**輸入高阻模式

**開漏模式
常用於I2C輸出線,開漏引腳需要加一個外部上拉電阻,典型連一個電阻到VDD

**讀-修改-寫 指令
ANL ORL XRL JBC CPL INC DEC DJNZ MOV bit,C CLR bit SETB bit

**管腳控制寄存器

1.輸入輸出數據控制
I/O輸入輸出數據緩存,可位尋址
2.輸出模式控制
准雙向模式(標准8051端口結構)、推挽輸出、輸入和開漏模式
對P2.0,有一個上拉電阻控制位 P2S.7
P0M1 -端口0模式選擇1 P1M1 -端口1模式選擇1 P3M1 -端口3模式選擇1
P0M2 -端口0模式選擇2 P1M2 -端口1模式選擇1 P3M2 -端口3模式選擇2
P2S -P20設置及定時器0/1輸出使能
位7 0-P2.0上拉功能關閉;1-上拉打開(僅當RPD=0有效)
3.輸入類型
每一個I/O引腳可獨立配置成TTL輸入或施密特觸發輸入,注意所有
PxS寄存器通過切換SFR頁到頁1來訪問
P0S 端口0施密特觸發輸入 0-TTL電平,1-施密特輸入
P1S 端口1施密特觸發輸入
P2S 端口2施密特觸發輸入
位0 0-P2.0TTL電平輸入;1-P2.0施密特輸入
P3S 端口3 施密特觸發輸入
位0 0-P3.0TTL電平輸入;1-P3.0施密特觸發輸入
4.輸出斜率控制
P0SR -端口0斜率控制 P1SR -端口1斜率控制 P3SR -端口3斜率控制
位n PxSR.n:0-普通輸出;1-高速輸出
-------------------------------------------------------------------------------------------
八、定時器/計數器 0和1
2個16位,每個由兩個8位寄存器組成16位技術寄存器
定時器/計數器0 高8位寄存器,TH0;低8位,TL0
定時器/計數器1 高8位寄存器,TH1;低8位,TL01
TCON和TMOD配置0和1的工作模式
1.TMODC/T位,第2位選擇定時器/計數器0功能,第6位選擇定時器/計數器1功能
2.定時器功能時,定時器0設置T0M(CKCON.3)位,定時器設置T1M(CKCON.4)位,選擇定時器時鍾
是系統時鍾(Fsys)或Fsys的12分頻
3.設置P2S寄存器的T0OE和T1OE可實現定時器溢出時,引腳T0/T1自動翻轉輸出
(C/T位應被清除並選擇Fsys作為定時器的時鍾源)
4.TH0(TH1)和TL0(TL1)是獨立分開訪問的,在模式0或模式1下時,讀/寫TH0(TH1)和TL0(TL1)之前
必須清除TR0(TR1)來停止計時(TCON 定時器0和1控制寄存器)
**定時器寄存器
1.TMOD 定時器0和1模式寄存器
2.TCON 定時器0和1控制寄存器(可位尋址)
3.TL0 定時器0低字節
4.TH0 定時器0高字節
5.TL1 定時器1低字節
6.TH1 定時器1高字節
7.CKCON 時鍾控制寄存器 [6]PWM時鍾源選擇,[4]定時器1,[3]定時器0,[1]系統時鍾輸出
8.P2S P20設置和定時器0/1輸出使能寄存器
位3 T1OE 定時器1輸出使能(0-T1引腳輸出關閉,1-打開)
位2 T0OE 定時器0輸出使能(0-T0引腳輸出關閉,1-打開)

**模式0 13位定時器
**模式1 16位定時器
**模式2 8位自動重裝載定時器
**模式3 兩組獨立8位定時器
-------------------------------------------------------------------------------------------
九、定時器2及輸入捕獲
定時器2是一個16位的向上計數器,由高8位寄存器(TH2)和低8位寄存器(TL2)組成。
通過配置寄存器RCMP2H和RCMP2L,設置CM/RL2(T2CON.0),定時器2能工作在比較模式和
自動重載模式下。
定時器2具有3通道輸入捕獲模塊,可用於測量輸入脈沖寬度或周期,3通道捕獲結果分別存放在
寄存器C0H及C0L,C1H及C1L,C2H及C2L中。
定時器2的時鍾來自系統時鍾的分頻,有8級分頻
TR2(T2CON.2)置1,定時器使能,置0,定時器關閉。

**寄存器
T2CON -定時器2控制寄存器
[7] -TF2 定時器2溢出標志,[2] -TR2 ,[0] -CM/RL2 定時器2比較(1)或自動重載功能(0)
T2MOD -定時器2模式選擇
RCMP2L -定時器2重裝載/比較數據低字節
RCMP2H -定時器2重裝載/比較數據高字節
TL2 -定時器2低字節 定時器2的16位寄存器的低8位字節數據
TH2 -定時器2高字節
建議軟件在清除TR2停止定時器2工作之后再讀寫這兩個寄存器的值

**自動重裝載功能模式
**比較功能模式
**輸入捕獲功能模塊
依靠定時器2實現輸入捕獲功能,通過寄存器CAPCON0-2配置來支持3組通道輸入(CAP0,CAP1,CAP2)
可選擇配置9個引腳(P1.5,P1[2:0],P0.0,P0.1,P0[5:3]).
引腳復合功能選擇通過CAPCON3和CAPCON4配置。
**寄存器
CAPCON0 -輸入捕獲控制寄存器0 通道使能
CAPCON1 -輸入捕獲控制寄存器1 觸發邊沿
CAPCON2 -輸入捕獲控制寄存器2 噪聲濾波
C0L -捕獲通道0低字節
C0H -捕獲通道0高字節
C1L -捕獲通道1低字節
C1H -捕獲通道1高字節
C2L -捕獲通道2低字節
C2H -捕獲通道2高字節
CAPCON3 -輸入捕獲控制寄存器3 引腳選擇 通道1[7:4] 通道0[3:0]
CAPCON4 -輸入捕獲控制寄存器4 引腳選擇 通道2[3:0]
-------------------------------------------------------------------------------------------
十、定時器3
定時器3是一個16位自動重裝載,向上計數定時器
定時器3同時也用作串口波特率產生定時器

**寄存器
T3CON -定時器3控制寄存器
RL3 -定時器3自動重裝載寄存器低字節
RH3 -定時器3自動重裝載寄存器高字節
--------------------------------------------------------------------------------------------
十七、脈沖寬度調制 PWM
PWM(脈沖寬度調制)信號在控制方案中應用。
電機驅動、風扇控制、背光調節、LED光源調光或通過低通濾波器電路模擬一個簡單的
數模轉換模塊的輸出
三對(6個PWM通道)16位精度、可調周期和占空比的PWM輸出。
該模塊架構適用於驅動單相或三相無刷直流電機(BLDC),或三相交流感應電機。
每個通道PWM輸出可配置為獨立輸出模式、互補模式或同步模式。
當設定為互補模式時,通過插入可配置的死區時間,保護MOS管同時導通
PWM波形可配置邊沿對齊或中心對齊來選擇中斷響應位置
** 脈沖寬度調制發生器
--------------------------------------------------------------------------------------------
六、特殊功能寄存器(SFR)
特殊功能寄存器(SFRs) 控制或監視外設和其他模塊
位於地址80到FFH地址空間,僅可通過直接尋址訪問,
以0H或8H結尾的SFRs可位尋址,其他可字節尋址
所有SFR訪問目標都是SFR頁0,寄存器SFRS用來切換SFR頁地址(SFRS有TA寫保護)

SFRS -SFR頁選擇(TA保護)
位0 0指令訪問SFR頁0;1指令訪問SFR頁1

SFR內存分布
SFR Page Addr 0/8 1/9 2/A 3/B 4/C 5/D 6/E 7/F
0 F8 SCON_1 PDTEN PDTCNT PMEN PMD - EIP1 EIPH1
1 - -
0 F0 B CAPCON3 CAPCON4 SPCR SPSR SPDR AINDIDS EIPH
1 SPCR2 - - -
0 E8 ADCCON0 PICON PINEN PIPEN PIF C2L C2H EIP
1 -
0 E0 ACC ADCCON1 ADCCON2 ADCDLY C0L C0H C1L C1H
1
0 D8 PWMCON0 PWMPL PWM0L PWM1L PWM2L PWM3L PIOCON0 PWMCON1
1
0 D0 PSW PWMPH PWM0H PWM1H PWM2H PWM3H PNP FBD
1
0 C8 T2CON T2MOD RCMP2L RCMP2H TL2 TH2 ADCMPL ADCMPH
1 PWM4L PWM5L
0 C0 I2CON I2ADDR ADCRL ADCRH T3CON RL3 RH3 TA
1 PWM4H PWM5H PIOCON1
0 B8 IP SADEN SADEN_1 SADDR_1 I2DAT I2STAT I2CLK I2TOC
1
0 B0 P3 P0M1 P0M2 P1M1 P1M2 P2S - IPH
1 P0S P0SR P1S P1SR PWMINTC
0 A8 IE SADDR WDCON BODCON1 P3M1 P3M2 IAPFD IAPCN
1 P3S P3SR
0 A0 P2 - AUXR1 BODCON0 IAPTRG IAPUEN IAPAL IAPAH
1
0 98 SCON SBUF SBUF_1 EIE EIE1 - - CHPCON
1
0 90 P1 SFRS CAPCON0 CAPCON1 CAPCON2 CKDIV CKSWT CKEN
1
0 88 TCON TMOD TL0 TL1 TH0 TH1 CKCON WKCON
1
0 80 P0 SP DPL DPH - - RWK PCON
1


-------------------------------------------------------------------------------------------
二十、中斷系統
**中斷概念
中斷的目的是讓軟件處理非常規或異步的事件。
4個中斷優先級、18個中斷源,中斷可被全局使能或關閉
中斷向量
源 中斷地址 中斷號
復位 0000H -
外部中斷0 0003H 0
定時器0溢出 000BH 1
外部中斷1 0013H 2
定時器1溢出 001BH 3
串口0中斷 0023H 4
定時器2事件 002BH 5
I2C狀態/超時中斷 0033H 6
管腳中斷 003BH 7
欠壓檢測中斷 0043H 8
SPI中斷 004BH 9
WDT中斷 0053H 10
ADC中斷 005BH 11
定時器輸入捕獲中斷 0063H 12
PWM中斷 006BH 13
故障剎車中斷 0073H 14
串口1中斷 007BH 15
定時器3溢出中斷 0083H 16
WKT自喚醒定時器中斷 008BH 17

**中斷延遲
中斷標志位在每個系統時鍾周期都會被采樣
滿足特定條件,硬件將執行背部產生的LCALL指令,目標地址是中斷向量地址
條件:1沒有相同或更高優先級中斷服務程序在執行
2當前查詢中斷標志周期正好是當前執行指令的最后一個周期
3當前指令不是寫任何中斷使能位或優先級位且也不能是中斷返回指令RETI

執行LCALL指令需要4個機器周期,從中斷標志位到執行中斷服務程序最少需要5個機器周期
不大於16個時鍾周期(RETI指令的5個時鍾周期、完成最長指令的6個時鍾周期、偵測中斷1個時鍾周
和完成硬件LCALL跳轉到中斷地址的4個周期)
-------------------------------------------------------------------------------------------
二十二、電源管理
空閑模式
掉電模式

-------------------------------------------------------------------------------------------
十六、管腳中斷
管腳中斷一般用於檢測接口設備(鍵盤板或鍵盤)的邊沿變化
每個管腳都有輸入中斷功能,用於檢測管腳電平狀態,最多配置8個I/O用於管腳中斷
邊沿檢測或電平觸發
管腳中斷能使MCU從空閑模式或掉電模式喚醒(不退出空閑模式,退出掉電模式)
PICON設置管腳中斷的觸發方式
PIF中斷標志寄存器,最多8個中斷標志,通過硬件置位,通過軟件清0

1.PICON-管腳中斷控制寄存器 [7:2]-電平0/邊沿1觸發、[1:0]關鍵中斷端口選擇(0 1 2 3)
2.PINEN-管腳中斷反相特性使能寄存器 0-關閉中斷,1-低電平/下降沿觸發
3.PIPEN-管腳中斷正相特性使能寄存器 0-關閉中斷,1-高電平/上升沿觸發
4.PIF -管腳中斷標志寄存器
5.EIE -擴展中斷使能寄存器
[7:0]:定時器2,SPI,PWM故障剎車,WDT,PWM,輸入捕獲,引腳中斷,I2C
EIE1擴展中斷使能寄存器1
[2:0]:WKT,定時器3,串口1
6.IE -中斷使能寄存器
[7:0]:所有中斷 EA,ADC(ADCCON0.7),BOD(BODCON0.3),串口0(SCON.1-TI、SCON.0-RI),
定時器1(TCON.7),外部中斷1(P1.7),定時器0(TCON.5),外部中斷0(P3.0)
-------------------------------------------------------------------------------------------
十二、自喚醒定時器 WKT
用於低功耗模式下的周期喚醒芯片,也可用作通用定時器。
WKT在空閑或掉電模式保持計數。
WKT用作喚醒定時器時,要在進入省電模式之前開啟。
WKT只能配置片內10kHz時鍾源LIRC,注意系統時鍾頻率必須大於WKT時鍾兩倍以上
用戶應手動使能選擇的時鍾源並等待它穩定確保成功(時鍾源在掉電模式下也要保持工作)
WKT配備簡單的8位自動重載向上計數定時器,預分頻從1/1到1/2048
EWKT置1,WKT中斷服務程序將被執行(計數器溢出時)

**寄存器
WKCON 自喚醒定時器控制寄存器
RWK 自喚醒定時器重裝載數據寄存器
RWK僅在WKT停止(WKTR位為0)的時候可以寫入,預分頻是1/1時,RWK不能是FFH
-------------------------------------------------------------------------------------------
十三、串口控制器 UART
兩個全雙工串口,具備自動地址識別和幀錯誤檢測功能
同步工作模式:模式0,三種全雙工異步模式:模式1,2和3
串口接收帶有接收緩存,接收和發送都是對SBUF進行操作訪問
寫入SBUF數據將直接傳到發送寄存器,而讀取SBUF是訪問一個具有獨立物理地址的接收寄存器
任何一種模式,任何以操作SBUF的指令都將開始一次傳輸
在使用串口功能前,串口所用管腳P0.7及P0.6(RXD及TXD引腳)或者P0.2及P1.6(RXD_1及TXD_1)
必須先置1
可將串口0的TXD及RXD通過UART0PX(AUXR1.2)更改位置

**寄存器
SCON -串口0控制寄存器(可位尋址) 模式選擇,多機通信,接收發送標志,中斷標志
SCON_1 -串口1控制寄存器(可位尋址)
PCON -電源控制寄存器
T3CON -定時器3控制寄存器
SBUF -串口0數據緩存寄存器
SBUF_1 -串口1數據緩存寄存器
AUXR1 -輔助寄存器1

**模式描述
串口0
模式 SM0 SM1 描述 幀位數 波特率
0 0 0 同步 8 Fsys除以12或2(當SM2(SCON.5)設為1)
1 0 1 異步 10 定時器1/定時器3溢出時間除以32或16(當SMOD(PCON.7)設為1)
2 1 0 異步 11 Fsys除以32或64(當SMOD(PCON.7)設為1)
3 1 1 異步 11 定時器1/定時器3溢出時間除以32或16(當SMOD(PCON.7)設為1)

串口1
模式 SM0 SM1 描述 幀位數 波特率
0 0 0 同步 8 Fsys除以12或2(當SM2_1(SCON_1.5)設為1)
1 0 1 異步 10 定時器3溢出時間除以16
2 1 0 異步 11 Fsys除以32或64(當SMOD_1(T3CON.7)設為1)
3 1 1 異步 11 定時器3溢出時間除以16

**模式0
主機模式
串行數據由RXD腳進行收發,TXD腳用於產生移位時鍾
半雙工通信,每幀接收或發送8位數據
數據的最低位被最先發送或接收
波特率設置為Fsys/12(SM2(SCON.5)為0)或Fsys/2(SM2為1)
串行時鍾將一直由MCU產生,串口模式0為主機模式
**模式1
異步全雙工的工作方式。異步通訊模式通常用於PC間,調制解調器和其它類似接口間通訊.
10位數據通過TXD發送,通過RXD接收
10位數據組成如下:起始位(邏輯0), 8位數據(最低位在前),停止位(邏輯1)
波特率由定時器1決定, SMOD (PCON.7) 設置為1可使波特率加倍
**模式2
全雙工異步通信
11位收發。 數據由起始位(邏輯0), 8位數據(最低位在前),第9位數據(TB8或RB8)
和停止位(邏輯1)組成。
第9位做奇偶校驗位或多機通信時用來區分數據和地址
波特率是系統時鍾頻率的1/32 或1/64,由 SMOD位(PCON.7)來配置
**模式3
除波特率外模式 3與模式 2相同。模式3采用定時器1的溢出率作為波特率時鍾
-------------------------------------------------------------------------------------------
十八、12-位模數轉換 ADC
12位逐次逼近寄存器型(SAR)的模擬數字轉換器(ADC)
模數轉換模塊負責將管腳上的模擬信號轉換為12位二進制數據
支持8通道單端輸入模式
內部帶隙電壓(band-gap voltage)為1.22V,同時也可用作內部ADC輸入端
所有模擬電路復用同一組采樣電路和同一組采樣保持電容
該組采樣保持電容為轉換電路的輸入端

**ADC工作方式
設置ADCEN(ADCCON1.0)位使能ADC電路,激活ADC電路。
一旦ADC轉換模塊不再使用,建議清零ADCEN位關閉ADC模塊節省功耗
ADC轉換輸入管腳需要特別配置,通過ADCHS[2:0]選擇采樣所需要的ADC通道連接到采樣電路上
通過PxMn寄存器把采樣所用的管腳配置為'輸入高阻模式'(input-only high impedance)
通過配置AINDIDS寄存器相應位關閉數字輸入緩沖區(數字輸入電路工作將可能產生漏電流)
如上配置,ADC輸入腳將變成純模擬輸入電路
置ADCS位(ADCCON0.6)開啟AD轉換,轉換完成,硬件自動清除該位,同時置ADCF(ADCCON0.7)位
此時ADC中斷若已經使能,會產生ADC中斷
轉換結果存放在ADCRH(高8位)及ADCRL(低4位)中,12位轉換結果值為4095*Vain/Vref

注意,內部及外部數字電路,可能影響采樣結果的准確度,請參考如下應用,以降低噪聲電平干擾
1.模擬輸入腳盡量離芯片越近越好,避免管腳附近有告訴數字電路經過,並離高速數字電路
越遠越好
2.在轉換過程中,將芯片進入空閑模式
3.如果模擬輸入腳AIN在系統中同時需要切換做數字管腳,請確保在轉換過程中不要做
數字/模擬切換動作

**外部觸發ADC
N76E003提供硬件觸發方式啟動AD轉換
ADCEX(ADCCON1.1)置1,選擇PWM通道的邊沿或周期,STADC管腳邊沿自動觸發
啟動AD轉換(由硬件設置自動ADCS信號)。
通過STADCPX(ADCCON1.6)可以靈活配置STADC的輸入管腳
通過ETGSEL(ADCCON0[5:4])和ETGTYP(ADCCON1[3:2])設置來選擇觸發源和觸發類型
還可在外部觸發信號與啟動AD轉換之間插入觸發延時(觸發延時計數器)
注意 在AD模塊轉換過程中(ADCS=1),任何軟件或硬件觸發信號都是無效的

**ADC轉換結果比較器
提供一組數字比較器
比較AD 12位轉換結果與預先填入寄存器ACMPH及ACMPL的內容是否一致
ADC比較器使能位為ADCMPEN(ADCCON2.5),每次AD轉換結果都比較
ADCMPO(ADCCON2.4)顯示根據ADCMPOP(ADCCON2.6)設定的比較結果
當ADFBEN(ADCCON2.7)設置后,ADC比較結果可觸發PWM故障剎車

**寄存器
ADCCON0 -ADC控制寄存器0(可位尋址) [7]ADC標志,[6]AD軟啟動,[5:4]外部觸發源
[3:0]AD轉換通道選擇
ADCCON1 -ADC控制寄存器1 [6]外部觸發ADC管腳選擇STADC 0-P0.4 1-P1.3
[3:2]外部觸發信號類型選擇 [1]ADCEX ADC觸發啟動信號選擇位 [0]ADCEN ADC使能位
ADCCON2 -ADC控制寄存器2
AINDIDS -ADC通道數字輸入不連接寄存器
ADCDLY -ADC觸發延時計數器
ADCRH -ADC轉換結果高位寄存器 高8位
ADCRL -ADC轉換結果低位寄存器 低4位
ADCMPH -ADC比較值高位寄存器 高8位
ADCMPL -ADC比較值低位寄存器 低4位
-------------------------------------------------------------------------------------------
二十一、在應用編程 (IAP)
IAP 通過軟件實現在線電擦除和編程的方法
通過設置IAPEN(CHPCON.0受TA保護)使能IAP,並設置IAPUEN寄存器的相應位,使能需要升級的
FLASH區域(CONFIG,LDROM,APROM),用戶將16位操作地址寫入IAPAH和IAPAL,數據寫入IAPFD,
命令寫入IAPCN
然后通過設置觸發位IAPGO(IAPTRG.0),執行IAP。此時CPU保持程序計數器,IAP動作完成后,
程序計數器繼續運行之后的指令,IAPGO位自動清零
IAPFF(CHPCON.6)是IAP錯誤標志
IAPTRG也受TA保護
頁擦除時間 5ms,字節編程時間 23.5us

**寄存器
CONFIG2 - 配置寄存器2 [3]欠壓禁止IAP位
CHPCON - 芯片控制寄存器(TA保護) [6]IAPFF IAP錯誤標志 [0]IAPEN IAP使能
IAPUEN - IAP更新使能寄存器(TA保護) [2]CFUEN CONFIG更新使能 [1]LDUEN LDROM更新使能
[0]APUEN APROM更新使能
IAPCN - IAP控制寄存器 IAP控制命令
IAPAH - IAP地址高字節寄存器
IAPAL - IAP地址低字節寄存器
IAPFD - IAP內存數據
IAPTRG - IAP觸發(TA保護) [0]IAPGO IAP執行 在觸發IAP動作前,如果中斷打開應臨時關閉

IAP 模式和命令代碼
IAP 模式 IAPCN IAPA[15:0] IAPFD[7:0]
IAPB[1:0] FOEN FCEN FCTRL[3:0] {IAPAH, IAPAL}
讀公司ID XX[注1] 0 0 1011 X DAH
讀器件ID XX 0 0 1100 低字節 DID: 0000H 低字節 DID: 50H
高字節 DID: 0001H 高字節 DID: 36H
讀96位UID XX 0 0 0100 0000H to 000BH 數據讀出
APROM 頁擦除 00 1 0 0010 地址 寫入[注2] FFH
LDROM 頁擦除 01 1 0 0010 地址 寫入[2] FFH
APROM 字節編程 00 1 0 0001 地址 寫入 數據寫入
LDROM 字節編程 01 1 0 0001 地址 寫入 數據寫入
APROM 字節讀 00 0 0 0000 地址 寫入 數據讀出
LDROM 字節讀 01 0 0 0000 地址 寫入 數據讀出
擦除所有CONFIG 11 1 0 0010 0000H FFH
CONFIG 字節編程 11 1 0 0001 CONFIG0: 0000H 數據寫入
CONFIG1: 0001H
CONFIG2: 0002H
CONFIG4: 0004H
CONFIG 字節讀 11 0 0 0000 CONFIG0: 0000H 數據讀出
CONFIG1: 0001H
CONFIG2: 0002H
CONFIG4: 0004H
[注1]表示無關項
[注2]每一頁是128字節,所以地址應該是目標頁的地址

**IAP指南
1.沒有IAP操作時,用戶必須清IAPEN(CHPCON.0)位。可以防止系統意外觸發IAP。
IAP需要使用內部HIRC振盪器。如果選擇外部時鍾源,禁止IAP將停止內部HIRC,可以省電
2.當LOCK位(CONFIG0.1)被激活,IAP讀,寫或擦除仍然有效

**使用flash存儲器作為數據存儲

-------------------------------------------------------------------------------------------
十九、時效訪問保護 TA
N76E003的時效訪問保護功能,限制對關鍵SFR的寫訪問
對被保護的位的訪問時受時間限制的,寫操作之前必須打開時效訪問窗口。
時效訪問窗口保持4個時鍾周期
打開時效訪問窗口:對TA寫入AAH,3個時鍾周期內再寫入55H。
e.g.
(CLR EA) ;if any interrupt is enabled,disable temporally
MOV TA,#0AAH
MOV TA,55H
(Instruction that writes a TA protected register)
(SETB EA) ;resume interrupts enabled
所有中斷必須關閉,避免隨中斷產生的延時影響三條指令的有效時間
**寄存器
TA - 時效訪問寄存器 [7:0]

-------------------------------------------------------------------------------------------
二十三、時鍾系統
3種系統時鍾源可選擇:
內部振盪器(10kHz、16MHz)、來自XIN引腳的外部時鍾,可以通過軟件設置選擇
內嵌2個內部RC振盪器,一個10kHZ低速、一個16MHz高速RC振盪器
CKDIV除頻器可調整N76E003的功耗與性能
**系統時鍾源
內部高速/低速振盪器、外部輸入時鍾
開啟不同的時鍾源可能會影響到多功能引腳P3.0/XIN
1.內部振盪器
高速16MHz(HIRC)和低速10kHz(LIRC)
設置HIRCEN(CKEN.5)位使能HIRC,設備上電時LIRC被使能
設置OSC[1:0](CKSWT[2:1])為[0,0]選擇HIRC作為系統時鍾
設置OSC[1:0](CKSWT[1:0])為[1,0]選擇LIRC作為系統時鍾
N76E003上電后HIRC和LIRC都被使能,並且系統默認HIRC為系統時鍾
**系統時鍾切換
可軟件設置CKSWT和CKEN寄存器切換時鍾源(寫時效訪問控制受TA保護)
切換需保證待切換時鍾源已穩定,步驟:
配置CKEN寄存器打開目標時鍾源
查詢CKSWT寄存器種對應的標志位,確定時鍾源是否穩定
寫OSC[1:0](CKSWT[2:1])切換到目標四中院
違規操作 CKSWTF(CLKEN.0)硬件置位
**寄存器
CKSWT - 時鍾切換寄存器(TA保護)
[5] HIRCST 16M狀態,[4] LIRCST,[3] ECLKST 外部時鍾輸入狀態,
[2:1] OSC[1:0] 振盪器選擇位 00 16M;01 XIN;10 10k;
CKEN - 時鍾使能寄存器(TA保護)
[7:6] EXTEN[1:0] 外部時鍾源使能 [5] HIRCEN 16M使能 [4] LIRCEN
[0] CKSWTF 時鍾切換錯誤標志位 0-成功
**系統時鍾除頻
除頻寄存器CKDIV 最大到1/510
可做到比空閑模式省電,避免需要等待掉電模式下等待振盪器重新起振的時間
CKDIV - 時鍾除頻寄存器
[7:0] Fsys = Fosc/(2*CKDIV) 0則為Fsys
**系統時鍾輸出
CLO(P1.1)引腳輸出系統時鍾
CKCON - 時鍾控制寄存器
[1] CLOEN 系統時鍾輸出使能


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM