C8051F020单片机
- 格式:docx
- 大小:37.58 KB
- 文档页数:3
单片机C8051F020简介及其在仪器和仪表中的应用
1引言
当前,随着科学技术及工农业生产水平的不断提高,对相应的仪器仪表也
提出越来越高的要求,因此,仪器仪表需扩展大量的外围功能部件来满足仪器仪
表复杂性、高性能及智能化的要求。
这种方法虽然满足了仪器的复杂性要求,但随之而来的问题是由于系统扩展的过于复杂而造成系统可靠性降低,故障率增加,查找故障困难,从而失去了智能化仪器仪表的优势,如果能够将功能复杂的众多外围功能部件全部或大部分集成到系统所使用的单片机内部,则可大大提高仪器仪表系统的可靠性,同时又使
系统的成本得以降低,还可利用单片机片内资源在不增加硬件成本的情况下增强仪器的性能,因而该方案是提高仪器仪表可靠性及性能的行之有效的方法,而美
国Cygnal公司的C8051F020单片机便是1款可满足复杂高性能仪器仪表要求的单片机。
C8051F020单片机是集成在1块芯片上的混合信号系统级单片机,具有与MCS?51内核及指令完全兼容的微控制器。
除了具有标准8051机的数字外设部件外,片内还集成了数据采集与控制系统中常用的模拟部件和其它数字外设及功能部件,主要包括模拟多路选择器、可编程增益放大器、ADC、DAC、电压
比较器、电压基准、温度传感器、SMBus/I2C、UART、SPI、可编程计数器/ 定时器阵列、定时器、I/O端口、电源监视器、看门狗定时器和时钟振荡器等, 且该单片机内部具有JTAG和调试电路,通过JATG接口可以使用安装在最终应用系统产品上的单片机进行非侵入、全速及在系统调试。
2功能与特点
(1)25MIPS高速流水线式与8051机完全兼容的CIP-51内核。
C8051F020单片机初始化程序和编译步骤2011-02-15 12:20:06| 分类:默认分类| 标签:|字号大中小订阅C8051F020编程步骤一、编程步骤:1、看门狗设置2、系统初始化3、端口初始化4、对应功能初始化(如:串口,定时器,I2C,SPI,PCA,DAC/ADC,中断等等)5、功能函数或中断函数(如需要)6、包含的头文件7、项目说明二、对应功能初始化要点:1、Uart:(1)串口工作模式由SCON设定(2)定时器工作方式设定TMOD (3)波特率TH 载入值设定(4)启动TR1 (5)时钟基准CKCON (6)波特率加倍设定PCON(7)开中断使能TI2、Time:(1)工作方式设定TMOD (2)定时器时钟基准CKCON (3)启动/停止TCON设定TRn3、Interrupt:(1)中断允许IE (2)触发方式设定(上下沿,电平)(3)对应控制位允许设定,如ES串口允许C8051F020单片机初始化程序; $INCLUDE (C8051F020.inc) /C8051F020单片机功能强大,初始化也比较繁杂,为了便于初始化各功能模块,我们编了此程序可看着“说明”初始化。
ORG SYS_INIT;※▲◆●◎★☆△;◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆;■-- <1> --电源管理; PCON ; POWER CONTROL;■-- <2> --系统时钟和振荡器; OSCXCN ; EXTERNAL OSCILLA TOR CONTROL; OSCICN ; INTERNAL OSCILLA TOR CONTROL;■-- <3> --复位及看门狗管理; RSTSRC ; RESET SOURCE; WDTCN ; W A TCHDOG TIMER CONTROL;■-- <4> --FLASH存储器编程和安全管理; FLSCL ; FLASH MEMORY TIMING PRESCALER; PSCTL ; PROGRAM STORE R/W CONTROL; FLACL ; FLASH ACESS LIMIT;■-- <5> --中断控制; IE ; INTERRUPT ENABLE; EIE1 ; EXTERNAL INTERRUPT ENABLE 1; EIE2 ; EXTERNAL INTERRUPT ENABLE 2; IP ; INTERRUPT PRIORITY; EIP1 ; EXTERNAL INTERRUPT PRIORITY REGISTER 1; EIP2 ; EXTERNAL INTERRUPT PRIORITY REGISTER 2; P3IF ; PORT 3 EXTERNAL INTERRUPT FLAGS;■-- <6> --端口IO初始化及交叉开关设置; XBR0 ; DIGITAL CROSSBAR CONFIGURA TION REGISTER 0; XBR1 ; DIGITAL CROSSBAR CONFIGURA TION REGISTER 1; XBR2 ; DIGITAL CROSSBAR CONFIGURA TION REGISTER 2; P0MDOUT ; PORT 0 OUTPUT MODE CONFIGURA TION; P1MDOUT ; PORT 1 OUTPUT MODE CONFIGURA TION; P2MDOUT ; PORT 2 OUTPUT MODE CONFIGURA TION; P3MDOUT ; PORT 3 OUTPUT MODE CONFIGURA TION; P74OUT ; PORTS 4 - 7 OUTPUT MODE;■-- <7> --外部RAM和片内XRAM; EMI0CN ; EXTERNAL MEMORY INTERFACE CONTROL; EMI0CF ; EXTERNAL MEMORY INTERFACE (EMIF) CONFIGURA TION ; EMI0TC ; EXTERNAL MEMORY;■-- <8> --定时器设置; TMOD ; TIMER MODE; TCON ; TIMER CONTROL; T2CON ; TIMER 2 CONTROL; T4CON ; TIMER 4 CONTROL; TMR3CN ; TIMER 3 CONTROL; TMR3RLL ; TIMER 3 RELOAD REGISTER - LOW BYTE; TMR3RLH ; TIMER 3 RELOAD REGISTER - HIGH BYTE; TMR3L ; TIMER 3 - LOW BYTE; TMR3H ; TIMER 3 - HIGH BYTE;■-- <9> --串行通讯; SCON0 ; SERIAL PORT 0 CONTROL; SCON1 ; SERIAL PORT 1 CONTROL; SBUF1 ; SERAIL PORT 1 DA TA; SADDR1 ; SERAIL PORT 1; PCON ; POWER CONTROL; RCAP2L ; TIMER 2 CAPTURE REGISTER - LOW BYTE; RCAP2H ; TIMER 2 CAPTURE REGISTER - HIGH BYTE; RCAP4L ; TIMER 4 CAPTURE REGISTER - LOW BYTE; RCAP4H ; TIMER 4 CAPTURE REGISTER - HIGH BYTE; SADDR0 ; SERIAL PORT 0 SLA VE ADDRESS;■-- <10> --可编程计数器阵列; PCA0CN ; PCA 0 COUNTER CONTROL; PCA0MD ; PCA 0 COUNTER MODE; PCA0CPM0 ; CONTROL REGISTER FOR PCA 0 MODULE 0; PCA0CPM1 ; CONTROL REGISTER FOR PCA 0 MODULE 1; PCA0CPM2 ; CONTROL REGISTER FOR PCA 0 MODULE 2; PCA0CPM3 ; CONTROL REGISTER FOR PCA 0 MODULE 3; PCA0CPM4 ; CONTROL REGISTER FOR PCA 0 MODULE 4;■-- <11> --SMBus通讯; SMB0CN ; SMBUS 0 CONTROL; SMB0CR ; SMBUS 0 CLOCK RA TE; SMB0STA; SMBUS 0 STA TUS; SMB0DA T ; SMBUS 0 DA TA; SMB0ADR ; SMBUS 0 SLA VE ADDRESS;■-- <12> --SPI总线通讯; SPI0CKR ; SERIAL PERIPHERAL INTERFACE 0 CLOCK RA TE CONTROL ; SPI0DA T ; SERIAL PERIPHERAL INTERFACE 0 DA TA; SPI0CFG ; SERIAL PERIPHERAL INTERFACE 0 CONFIGURA TION; SPI0CN ; SERIAL PERIPHERAL INTERFACE 0 CONTROL;-- <13> --ADC转换; AMX0CF ; ADC 0 MUX CONFIGURA TION; AMX0SL ; ADC 0 MUX CHANNEL SELECTION; ADC0CF ; ADC 0 CONFIGURA TION; ADC0CN ; ADC 0 CONTROL; ADC0L ; ADC 0 DA TA - LOW BYTE; ADC0H ; ADC 0 DA TA - HIGH BYTE; ADC1CF ; ADC 1 ANALOG MUX CONFIGURA TION; AMX1SL ; ADC 1 ANALOG MUX CHANNEL SELECT; ADC1CN ; ADC 1 CONTROL; ADC0GTL ; ADC 0 GREA TER-THAN REGISTER - LOW BYTE; ADC0GTH ; ADC 0 GREA TER-THAN REGISTER - HIGH BYTE; ADC0LTL ; ADC 0 LESS-THAN REGISTER - LOW BYTE; ADC0LTH ; ADC 0 LESS-THAN REGISTER - HIGH BYTE; REF0CN ; VOLTAGE REFERENCE 0 CONTROL; ADC1 ; ADC 1 DA TA;■-- <14> --DAC转换; PCA0L ; PCA 0 TIMER - LOW BYTE; PCA0H ; PCA 0 TIMER - HIGH BYTE; DAC0CN ; DAC 0 CONTROL; DAC1L ; DAC 1 REGISTER - LOW BYTE; DAC1H ; DAC 1 REGISTER - HIGH BYTE; DAC1CN ; DAC 1 CONTROL;■-- <15> --比较器设置; CPT0CN ; COMPARA TOR 0 CONTROL; CPT1CN ; COMPARA TOR 1 CONTROL; EMI0TC ; EMIF TIMING CONTROL;■-- <16> --时钟/电压基准设置; CKCON ; CLOCK CONTROL; SADEN1 ; SERIAL PORT 1 SLA VE ADDRESS MASK; SADEN0 ; SERIAL PORT 0 SLA VE ADDRESS MASK; P1MDIN ; PORT 1 INPUT MODE; PSW ; PROGRAM STA TUS WORD; B ; B REGISTER; WDTCN ; W A TCHDOG TIMER CONTROL;◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆;;==================================================================== ; function: Init_CTS 定时器/计数器,中断和串行通讯初始化子程序; input: -----------------; output: -----------------; usage: -----------------;==================================================================== THS0 equ 0a8hTLS0 equ 09ah; THS1 equ 0fah;0feh;0fah;-4800;0f4h; TLS1 equ 0fah;0feh;0fah;-4800;0f4h;; THS2 equ 0ffh;0feh;0fah;-4800;0f4h; TLS2 equ 0b8h;0feh;0fah;-4800;0f4hInit_TCS: ;定时器/计数器,中断和串行通讯初始化子程序;〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓; ◆◆◆8051内部控制寄存器◆◆◆;****************************************************************************** ******;|名称| 代号| 地址|位寻| B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|电源控制| PCON | 87H | NO |SMOD | -- | -- | -- | GF1 | GF0 | PD | IDL |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|计时控制| TCON | 88H | YE |TF1 | TR1 | TF0 | TR0 | IE1 | IT1 | IE0 | IT0 |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|计时模式| TMOD | 89H | NO |1GA TE| 1C/T | 1M1 | 1M0 | 0GA TE| 0C/T | 0M1 | 0M0 | ;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|串行控制| SCON | 98H | YE |SM0 | SM1 | SM2 | REN | TB8 | RB8 | TI | RI |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|中断允许| IE | A8H | YE |EA| -- | ET2 | ES | ET1 | EX1 | ET0 | EX0 |;|--------|------|------|----|-----|------|------|------|------|------|------|------|;|中断优先| IP| B8H | YE |-- | -- | PT2 | PS | PT1 | PX1 | PT0 | PX0 |;****************************************************************************** ******;时钟频率为:11.059200MHz;;机器周期为:12/fosc=1.085069μs;;CT0定时器设定延时为:2000μs;;CT0定时器工作于模式0;;CT0溢出处理采用中断方式;;CT0选择内部时钟;;CT0启动由TR0的0/1决定;;设定波特率为:4800bps;;串口0工作于方式1--T1定时器工作于方式2;;串口1工作于模式3--T2定时器用于波特率发生器4800bpsmov TH0, #THS0mov TL0, #TLS0; mov TH1, #THS1; mov TL1, #TLS1; mov TH2, #THS2; mov TL2, #TLS2;▲■-- <1> --电源管理;〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓;87H---PCON-------电源控制寄存器;复位值: 00000000;位7-2:保留。
C8051F020与80C51单片机的异同点C8051F系列单片机是完全集成的混合信号系统级芯片,,具有与8051兼容的CIP-51微控制器内核,采用流水线结构,单周期指令运行速度是8051的12倍,全指令集运行速度是原来的9.5倍。
熟悉NCS-51系列单片机的工程技术人员可以很容易地掌握C8051F的应用技术并能进行软件的移植。
但是不能将8051的程序完全照搬的应用于C8051F单片机中,这是因为两者的内部资源存在较大的差异,必须经过加工才能予以使用。
C8051F020的内部电路包括CIP-51微控制器内核及RAM、ROM、I/O口、定时/计数器、ADC、DAC、PCA(印制电路组装)、SPI(串行外设接口)和SMBus等部件,即把计算机的基本组成单元以及模拟和数字外设集成在一个芯片上,构成一个完整的片上系统(SoC)。
2 相同点C8051F020单片机与80C51系列单片机的指令系统完全一样。
掌握80C51单片机的人员可以很容易地接受C8051F020的应用技术并能完成相应软件的移植。
3 主要硬件不同点3.1 运行速度C8051F020的指令运行速度是一般80C51系列单片机的10倍以上。
因为其CIP-51中采用了流水线处理结构,已经没有了机器周期时序,指令执行的最小时序单位为系统时钟,大部分指令只要1~2个系统周期即可完成。
又由于其时钟系统比80C51的更加完善,有多个时钟源,且时钟源可编程,时钟频率范围为0~25 MHz,当CIP-5l工作在最大系统时钟频率25 MHz时,它的峰值速度可以达到25 MI/s,C8051F020已进入了8位高速单片机行列。
3.2 I/O端口的配置方式C8051F020拥有8个8位的I/O端口,大量减少了外部连线和器件扩展,有利于提高可靠性和抗干扰能力。
其中低4个I/O端口除可作为一般的通用I/O端口外,还可作为其他功能模块的输入或输出引脚,它是通过交叉开关配置寄存器XBR0、XBR1、XBR选择并控制的,它们控制优先权译码选择开关电路如图1所示,可将片内的计数器/定时器、串行总线、硬件中断、比较器输出及其它的数字信号配置为在端口I/O引脚出现,这样用户可以根据自己的特定需要选择所需的数字资源和通用I/O口。
一、C8051F020单片机实验接线表(注:黑体部分已调试通过)3.8 WDT看门狗实验一、实验目的熟悉汇编语言编程,掌握C8051F020内部WDT的应用。
二、实验内容通过改变延时程序的延时值,使延时值分别小于和大于WDT设置的定时间隔,运行程序,观察P0.0控制的发光二极管L8的变化。
三、实验原理介绍MCU内部有一个使用系统时钟的可编程看门狗定时器(WDT)。
当看门狗定时器溢出时,WDT将强制CPU进入复位状态。
为了防止复位,必须在溢出发生前由应用软件重新触发WDT。
如果系统出现了软件/硬件错误,使应用软件不能重新触发WDT,则WDT将溢出并产生复位,这样可以防止系统失控。
WDT是一个使用系统时钟的21位定时器。
该定时器检测对其控制寄存器的两次写操作的时间间隔。
如果这个时间间隔超过了编程的极限值,将产生WDT复位。
可以根据需要用软件允许和禁止WDT,或根据需要将其设置为永久性允许状态。
可以通过看门狗定时器控制寄存器(WDTCN)控制看门狗的功能。
(1)允许/复位WDT看门狗定时器的允许和复位是通过向WDTCN寄存器写入0xA5来实现的。
用户的应用软件应周期性地向WDTCN写入0xA5,以防止看门狗定时器溢出。
每次系统复位都将允许并启动WDT。
(2)禁止WDT向WDTCN寄存器写入0xDE后再写入 0xAD将禁止WDT。
下面的代码说明禁止WDT的过程:CLR EA ;禁止所有中断MOV WDTCN,#0DEh ;禁止看门狗定时器MOV WDTCN,#0ADhSETB EA ;重新允许中断必须在4个时钟周期之内写0xDE和写0xAD,否则禁止操作将被忽略。
在这个过程期间应禁止中断,以避免两次写操作之间延时。
(3)锁定WDT向WDTCN写入0xFF将使禁止功能无效。
WDT一旦被锁定,在下一次复位之前禁止操作将被忽略,写0xFF并不允许或复位看门狗定时器。
如果应用程序想一直使用看门狗,则应在初始化代码中向WDTCN写入0Xff.(4)设置WDT定时间隔WDTCN.[2~0]控制看门狗的超时间隔。
一、C8051F020单片机实验接线表(注:黑体部分已调试通过)3.8 WDT看门狗实验一、实验目的熟悉汇编语言编程,掌握C8051F020内部WDT的应用。
二、实验内容通过改变延时程序的延时值,使延时值分别小于和大于WDT设置的定时间隔,运行程序,观察P0.0控制的发光二极管L8的变化。
三、实验原理介绍MCU内部有一个使用系统时钟的可编程看门狗定时器(WDT)。
当看门狗定时器溢出时,WDT将强制CPU进入复位状态。
为了防止复位,必须在溢出发生前由应用软件重新触发WDT。
如果系统出现了软件/硬件错误,使应用软件不能重新触发WDT,则WDT将溢出并产生复位,这样可以防止系统失控。
WDT是一个使用系统时钟的21位定时器。
该定时器检测对其控制寄存器的两次写操作的时间间隔。
如果这个时间间隔超过了编程的极限值,将产生WDT复位。
可以根据需要用软件允许和禁止WDT,或根据需要将其设置为永久性允许状态。
可以通过看门狗定时器控制寄存器(WDTCN)控制看门狗的功能。
(1)允许/复位WDT看门狗定时器的允许和复位是通过向WDTCN寄存器写入0xA5来实现的。
用户的应用软件应周期性地向WDTCN写入0xA5,以防止看门狗定时器溢出。
每次系统复位都将允许并启动WDT。
(2)禁止WDT向WDTCN寄存器写入0xDE后再写入 0xAD将禁止WDT。
下面的代码说明禁止WDT的过程:CLR EA ;禁止所有中断MOV WDTCN,#0DEh ;禁止看门狗定时器MOV WDTCN,#0ADhSETB EA ;重新允许中断必须在4个时钟周期之内写0xDE和写0xAD,否则禁止操作将被忽略。
在这个过程期间应禁止中断,以避免两次写操作之间延时。
(3)锁定WDT向WDTCN写入0xFF将使禁止功能无效。
WDT一旦被锁定,在下一次复位之前禁止操作将被忽略,写0xFF并不允许或复位看门狗定时器。
如果应用程序想一直使用看门狗,则应在初始化代码中向WDTCN写入0Xff.(4)设置WDT定时间隔WDTCN.[2~0]控制看门狗的超时间隔。
单片机C8051F020的初始化设置单片机C8051F020的初始化设置在喧闹的世界中,能静下心来研究技术也是很有趣的事情。
好多年没作些具体的技术工作了,幸好领导给分配一个单片机任务。
现在把研究的技术写下来,与朋友们分享。
研究C8051F020编程不能离开初始化设置。
对于简单程序,读技术手册,将用到的I/O口,中断,串口,晶振等正确初试化后,已经成功一半了。
晶振需要初始化,C8051F020有内部晶振,精度不高,一般电路都使用外部晶振。
初始化晶振主要是OSCXCN和OSCICN两个寄存器的设置。
具体初始化代码可由Silicon的配置程序自动生成:void Oscillator_Init(){int i = 0;OSCXCN = 0x67;for (i = 0; i < 3000; i++);while ((OSCXCN & 0x80) == 0);OSCICN = 0x08;}上面程序包括了晶振初始化的全部过程:1、使能外部振荡器:OSCXCN = 0x67;2、等待至少1m钟,等待外部振荡器起稳:for (i = 0; i < 3000; i++);3、查询OSCXCN的第八位XTLVLD是否为1,1表明外部振荡器起稳:while ((OSCXCN & 0x80) == 0);4、关内部晶振,切换到外部晶振 OSCICN = 0x08;而同事们的设置是OSCICN= 0x88;应该是使用外部振荡器,但是内部振荡器也没关,这样MCU耗能高些。
串口0(UART0)也需要配置:void UART0_Init (void){SCON0 = 0x50; // SCON0: 模式1,可接收,8位串口TMOD = 0x20; // TMOD: 定时器1, 模式2, 8位自动重载TH1 = -(SYSCLK/BAUDRATE/16); // 设置定时器1TR1 = 1; // 开始定时CKCON |= 0x10; // 定时器用SYSCLK作基准时间PCON |= 0x80; // 禁止UART0波特率/2}SCON0是UART0控制寄存器,用来选择传输模式。
CPU新介绍--C8051F020单⽚微控制器第⼆章C8051F020单⽚微控制器2.1 C8051系列单⽚机简介C8051F020是美国Silicon Laboratories公司⽣产的ISP Flash微控制器。
C8051F020系列器件使⽤Silicon Labs的专利CIP-51微控制器内核。
CIP-51与MCS-51TM指令集完全兼容,可以使⽤标准803x/805x的汇编器和编译器进⾏软件开发。
CIP-51内核具有标准8052的所有外设部件,包括5个16位的计数器/定时器、两个全双⼯UART、256字节内部RAM、128字节特殊功能寄存器(SFR)地址空间及8/4个字节宽的I/O端⼝。
然⽽与传统的8051系列单⽚机相⽐,C8051F020具有许多其它的优点,如:1.速度提⾼CIP-51采⽤流⽔线结构,与标准的8051结构相⽐指令执⾏速度有很⼤的提⾼。
在⼀个标准的8051中,除MUL和DIV以外所有指令都需要12或24个系统时钟周期,最⼤系统时钟频率为12-24MHz。
⽽对于CIP-51内核,70%的指令的执⾏时间为1或2个系统时钟周期,只有4条指令的执⾏时间⼤于4个系统时钟周期。
因此,CIP-51⼯作在最⼤系统时钟频率25MHz时,它的峰值性能达到25MIPS。
2.JTAG技术C8051单⽚机内部预设了JTAG模块,它使得每⼀个单⽚机芯⽚都具有完整的在线调试功能,⽽不必使⽤复杂的仿真调试⼯具。
3.FLASH在线编程技术C8051系列的FLASH型单⽚机不但可以采⽤外部编程器进⾏烧写,⽤户还可以利⽤⾃⼰的程序修改FLASH的内容,⽽且不需要外加编程电压,可以⽅便地实现软件升级。
4.扩展的中断系统扩展的中断系统向CIP-51提供22个中断源(标准8051只有7个中断源),允许⼤量的模拟和数字外设中断微控制器。
⼀个中断驱动的系统需要较少的MCU⼲预,因⽽有更⾼的执⾏效率。
在设计⼀个多任务实时系统时,这些增加的中断源是⾮常有⽤的[12]。
C8051F020开发板说明书V1.0.02012年3月22日目录第一章 概述 (1)第二章 开发板简介 (2)2.1 开发板原理框图 (2)2.2 开发板实物图 (2)2.2.1 本开发板的外扩展资源和扩展接口 (2)2.2.2 本开发板的平面图 (3)第三章 开发板硬件电路说明 (4)3.1 硬件电路简介 (4)3.2 电源电路 (4)3.3单片机复位电路 (4)3.4 ZLG7289电路原理图 (5)3.5 LED电路原理图 (6)3.6 LCD接口电路 (7)第四章 开发板注意事项 (8)4.1注意事项 (8)4.2开发板跳线使用方法 (8)第一章 概述本说明书是C8051F020开发板的硬件使用说明书,详细描述了020开发板的硬件构成、原理,以及它的使用方法。
开发板用USB JTAG对C8051F020芯片进行编程,C8051F020有64个I/O而我们开发板通过排针引出了其中的44个I/O口,板上有标识(也可查看原理图或PCB图)。
引出来的I/O口可以供用户配置。
第二章 开发板简介2.1 开发板原理框图本开发板主要用到了C8051F020芯片(内置A/D D/A和比较器等)和周立功的ZLG7289芯片,020芯片通过SPI方式和ZLG7289完成数据传递,ZLG7289控制按键和数码管显示。
原理框图如下:图2-1 开发板原理框图2.2 开发板实物图2.2.1 本开发板的外扩展资源和扩展接口部分接口说明:JTAG接口:本板卡和USB Debug Adaptor仿真器连接,通过本接口用户可实现在线仿真。
LCD接口: 本板液晶用MzL05-12864AD/DA接口:本板的AD/DA接口都来自020内置的AD/DA另外的外扩资源和接口如下图所示:数码管AD 接口比较器接口P7口P3.0~ P3.6P0口P2口P1口3.2 JTAG3.3V/GNDDAC 接口LCD 接口LED ZLG72895vGNDP6口C8051F0203.3V/GND 按键电源开关复位键开发板实物图2.2.2 本开发板的平面图平面图上的位置和板卡的位置一一对应,详细的说明请看后面章节的图2-2 说明。
C8051F020单片机
C8051F020单片机简介
单片机(Microcontroller Unit,缩写为MCU)是一种集成了中央处
理器(CPU)、片内存储器(RAM和ROM)、输入/输出接口(I/O)、定时器/计数器和其他功能模块的微型计算机系统。
单片机被广泛应用
于家电、汽车电子、医疗设备、电力系统等领域。
C8051F020单片机作为Silicon Labs开发的一款8位低功耗单片机,具有较高的性价比和广泛的应用领域。
本文将对C8051F020进行详细
介绍。
一、C8051F020单片机的特点与功能
C8051F020单片机具有以下特点和功能:
1. 架构优势:C8051F020基于Silicon Labs的成熟8位CPU架构,
具有高效的指令执行能力和较低的功耗。
2. 丰富的存储器:C8051F020拥有8KB的闪存(Flash)用于程序
存储,可以在电源关闭后保持程序不丢失。
此外,它还配备了256字
节的数据闪存(Data Flash)和256字节的电子可擦除可编程只读存储
器(EPROM)。
3. 综合的外设:C8051F020单片机具有多个通用输入输出引脚(GPIO),可用于各种外设和传感器的连接。
此外,它还提供了模拟
与数字转换器(ADC)、串行通信接口(UART、SPI、I2C)以及定时器/计数器等功能。
4. 低功耗设计:C8051F020采用了优化的低功耗设计,具有多种休
眠模式和快速唤醒功能,可在长时间运行的场景下降低功耗。
5. 开发工具支持:Silicon Labs提供完善的开发工具套件,包括集成开发环境(IDE)、调试器和仿真器等,方便开发者进行软件开发和调试。
二、C8051F020单片机的应用领域
C8051F020单片机广泛应用于以下领域:
1. 家电控制:C8051F020可用于控制家电产品,如空调、洗衣机、
冰箱等,通过外围电路与其他传感器和执行器进行交互。
2. 工业自动化:C8051F020提供了丰富的通用输入输出引脚和通信
接口,可用于工业自动化控制系统,如PLC、工业机器人等。
3. 汽车电子:C8051F020单片机可用于汽车电子控制单元(ECU),如发动机管理系统、车身控制系统等,提供精确的控制和监测功能。
4. 医疗设备:C8051F020可用于医疗设备的控制和监测,如血压计、心电图仪等,满足对数据处理和精确控制的需求。
5. 家庭安防:C8051F020可以应用于家庭安防系统,如门禁控制器、摄像头控制等,实现智能化、可靠的安全防护。
三、C8051F020单片机的开发环境
C8051F020单片机的开发环境包括以下方面:
1. 开发工具:Silicon Labs提供了集成开发环境(IDE)和代码编译器,方便开发者进行软件开发和调试。
2. 开发板:C8051F020开发板提供了丰富的外设接口和示例代码,方便开发者快速入门并进行项目开发。
3. 文档支持:Silicon Labs提供了详细的开发文档和应用笔记,包括单片机的技术手册、外设接口说明等,方便开发者查阅和学习。
4. 社区支持:C8051F020拥有庞大的开发者社区,在论坛和社交媒体上可以获取到其他开发者的项目经验和技术支持。
总结:
C8051F020单片机作为一款8位低功耗单片机,具备丰富的特点和功能,广泛适用于家电、汽车电子、医疗设备、工业自动化等领域。
Silicon Labs提供了完善的开发工具和支持文档,方便开发者进行软件开发和调试。
通过合理的应用和开发,可以充分发挥C8051F020单片机的优势,满足各种应用场景的需求。