×
嵌入式 > 嵌入式开发 > 详情

F020基础知识

发布时间:2020-08-18 发布时间:
|
25M64kflash4352:40969(片外)+256(片内)RAM

每个端口引脚的输出方式都可被配置为漏极开路或推挽方式,缺省状态为漏极开路。(缺省Pn=0xff)
在推挽方式,向端口数据寄存器中的相应位写逻辑‘0’将使端口引脚被驱动到GND,写逻辑‘1将使端口引脚被驱动到VDD。
在漏极开路方式,向端口数据寄存器中的相应位写逻辑‘0’将使端口引脚被驱动到GND,写逻辑‘1’将使端口引脚处于高阻状态(注:必须禁止弱上拉,内部有弱上拉)。

通过设置输出方式为“漏极开路”并向端口数据寄存器中的相应位写‘1置为数字输入。例如,设置P3MDOUT.7为逻辑‘0’并设置P3.7为逻辑‘1‘即可将P3.7配置为数字输入

FLASH存储器除了用于存储程序代码之外还可以用于非易失性数据存储。这就允许在程序运行时计算和存储类似标定系数这样的数据。数据写入用MOVX指令,读出用MOVC指令。

MCU的FLASH存储器中有一个附加的128字节的扇区,可用于非易失性数据存储。然而它较小的扇区容量使其尤其适于作为通用的非易失性临时存储器。尽管FLASH存储器可以每次写一个字节,但必须首先擦除整个扇区。若要修改一个多字节数据集中的某一个字节,数据集必须被移动到临时存储区域。128字节的扇区规模使数据更新更加容易,可以不浪费程序存储器或RAM空间。
该128字节的扇区在64K字节FLASH存储器中是双映射的;它的地址范围是从0x1000到0x1007F。该128B扇区是双映射的,其逻辑地址为0x00-0x7F(该128字节无法通过JTAG读出或写入,但擦写整片CPU时,会将该区域的数据擦除),为了访问该扇区,PSCTL寄存器中的SFLE位必须被设置为逻辑‘1’。该扇区不能用于存储程序代码。

指令是以系统时钟周期为单位,而不像51单片机以机器周期(12×系统时钟周期)为单位,速度大大提高

C8051F020低端口(P0. P1. P2和P3)既可以按位寻址也可以按字节寻址。高端口(P4. P5. P6和P7)只能按字节寻址。

对于附加128字节的flash扇区,每次擦除128个字节
对于其他flash扇区,每次擦除512个字节

ADC0的转换速率最大是100ksps,其转换速率由SAR clock决定,而采样速率由用户自己决定(可通过定时器设置_),但要小于转换速率。

C8051FXX单片机的加密方式,是通过修改FLASH存储器的0xfdfe和0xfdff这两个字节来实现的。其中0xfdfe是写保护字节。0xfdff是读保护字节。每个字节的8个位分别对应8K的FLASH存储空间,如果该存储空间的对应位被清除,则该空间也被加密。

STARTUP.A51 这个文件有什么用,有必要添加到工程吗?
如果不添加"startup.a51"文件,编译器就会自动加入一段初始化内存以及堆栈等的代码,这时的内存初始化部分你就无法去控制了,当然这在大部分情况下没什么关系。但是如果你想你的程序在复位后,内存里面的信息依然还保存着(所说的“热复位”),那么你就需要添加该启动文件,并且去里面修改内存初始化部分,不要初始化你需要保留的部分内存。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
现场总线系统的功能安全评价