C8051特点

C8051与传统51的区别在于优先权交叉开关、系统时钟、SFR寄存器几个方面:

一 优先权交叉开关:传统的51外设功能是固定分配或者复用分配到指定引脚,而C8051则是通过优先权交叉开关设置,即要想分配外设到正确引脚不断要对应XBR使能,而且前面的外设也要按顺序正确使能(优先权使能)。交叉开关都是要使能的,否则引脚都被默认设置成弱上拉输入,引脚和内部外设功能是隔离的。

二 系统时钟:可以来自外部晶体、内部晶体、PLL(可来对外部或内部时钟源进行倍频或分频),满足各种需要。

三 SFR寄存器:C8051扩展了C51的寄存器(128字节不够用),外扩的寄存器分在不同页地址的空间里,要想对相应的寄存器进行正确操作,就要正确切换寄存器页(先保存当前页,在切换相应的页,最后在恢复原来保存的页),这和交叉开关是新手最容易忘记和出错的地方。

unsigned char SFRPAGE_save=SFRPAGE;

SFRPAGE=XXX_PAGE;

....操作相应寄存器

。。。

SFRPAGE=SFRPAGE_save;

四其它的一些问题:

IO:默认是开漏,若上拉输入(当当输出0时若上拉自动关闭以避免冲突,推挽:输出0到GND,输出1到VCC;开漏:输出0到GND,输出1是高阻)

看门狗:默认是开启的,调试时应关闭

SFRPAGE = CONFIG_PAGE

WDTCN = 0xde;
    WDTCN = 0xad;   //禁止看门狗定时器。

时间: 2024-10-10 09:06:54

C8051特点的相关文章

Proteus仿真+C8051源码(100例)+红外线遥控仿真

从百度网盘下载,提取码:di7r 目录结构 ├─Proteus仿真+C8051源码(100例) │ │ 源码解释.doc │ │ │ └─基于8051+Proteus仿真 │ │ 案例压缩包相关说明.txt │ │ │ ├─第 01 篇 基础部分 │ │ ├─01 闪烁的LED │ │ │ │ Last Loaded 闪烁的LED.DBK │ │ │ │ 闪烁的LED.DSN │ │ │ │ 闪烁的LED.PWI │ │ │ │ │ │ │ ├─code │ │ │ │ led │ │ │ │

C8051逆向电阻屏:头儿拍脑袋说电阻屏IC好赚钱3块钱成本能卖20几块。,一个月不分昼夜逆向成功后头儿说电阻屏已经被市场淘汰请放弃治疗。

参考: 书籍,<圈圈教你玩USB> C8051F单片机快速入门:http://www.waveshare.net/Left_Column/C8051F_Application_Notes.htm <1>USB器件最底层的驱动编写:   C8051F320.H  C8051F320的定义   F32x_USB_Register.h USB固件.包括所有的USB核心寄存器地址,寄存器访问宏,和寄存器的位掩码   USB.H 8051F系列专用 VID PID  USB_GetOutDa

c8051单片机注意事项:

一定要注意交叉开关问题:外设要想正确分配到指定引脚,一定要用配置工具确定分配到指定引脚:如果手动分配一定要仔细验证.这方面有个深刻的教训. 有个项目用c8051f020,用到2个串口,硬件已经确定好了,我主要负责软件,要想让UART0/1分别分配到指定的(P0.0~p0.1)/(P0.4~p0.5),根据配置工具测试发现必须配置串口0.SMBUS .串口1而SPI0禁用.但SMBUS板子上引出暂未使用,所以当时采用手动配置交叉开关,模块一个一个调试,所以就没有使能smbus,这就造成了后面的串口

Silicon C8051F340之时钟系统

一.背景 做个记录,以备下次快速开发. 二.正文 C8051F340有一个可编程内部高频振荡器.一个可编程内部低频振荡器.一个外部振荡器驱动电路 和一个4倍时钟乘法器.其中可编程内部高频振荡器在系统复位后被默认为系统时钟.其值为12MHZ.震荡 图如下: 时钟配置例程如下,设置内部时钟为4倍时钟乘法器提供12MHz时钟.4倍时钟乘法器输出经1/2分频 后用作系统时钟. void Sysclk_Init(void) { OSCICN |= 0x03; // Configure internal o

5年单片机学习总结-ED China【转】

人的一生是一个不断学习不断成长的过程转眼间,研究生的学习生涯结束了,走上新的工作岗位回头看看,发现自己不知不觉已经走过了五年的单片机学习之旅 在2003年最初接触单片机的时候,在我心中觉得51就是单片机,单片机就是51,根本不知道还有其他单片机的存在那时候老师只教会了我们汇编语言,根本不知道用C语言也可以进行单片机开发幸运的是,我加入了单片机兴趣小组,在老师的指导下,做了一系列实验,有基于DS18B20的温度采集系统有基于164的移位寄存器的灯光控制系统有步进电机和直流电机的控制系统这时候我才发

新华龙电子推出最新网络开发板(W5100&amp;W5500方案)

2014/12/16 | Filed under: TCP/IP芯片 and tagged with: C8051, W5100, W5500, 新华龙电子, 网络开发板 42 Views 深圳新华龙电子有限公司近日推出了最新的网络开发板(F380-W5500&W5100-DK),集成了以太网专业方案提供商-WIZnet的W5100和W5500.利用全硬件TCP/IP协议栈的优势,从而使得C8051更加便捷,轻松地实现以太网功能.并且使用了W5100/W5500方案,能够大大节省C8051网络方

【转】搞定单片机多字节串口接收(串口多字节接收发送的高阶研究)

搞定单片机多字节串口接收(串口多字节接收发送的高阶研究) 原文地址:http://bbs.ednchina.com/BLOG_ARTICLE_3007162.HTM 工作了一年多,写了不少单片机串口程序.感觉串口多字节接收部分的逻辑相对于配置寄存器跟串口回复来说,是有点难度的——寄存器配置基本上都是死的,串口回复多字节跟回复一字节只是多了一个循环. 串口接收程序是基于串口中断的,单片机的串口每次接收到一字节数据产生一次中断,然后再读取某个寄存器就可以得到串口接收的数据了.然而在实际应用当中,基本

20155326《网络对抗》免考项目——深入恶意代码之生成恶意代码的动静态结合分析

20155326<网络对抗>免考项目--深入恶意代码之生成恶意代码的动静态结合分析 在前两篇博客中,我分别学习了利用静态分析工具和动态分析功具对恶意代码进行分析,在这篇博客中,我将之前学到的知识结合起来,对恶意代码示例进行更深层次的动静态分析. 并且,我学习了使用IDA PRO和OllyDbg对恶意代码进行进一步细化的动态分析,查看恶意代码中主要函数之间的关系以及函数之间的参数,以此来搞清楚恶意代码在运行后对计算机进行了哪些操作. IDA Pro介绍 IDA Pro交互式反汇编器专业版(Int

从植物大战僵尸开始一步一步带你入门逆向工程,

逆向工程扫盲篇 最近又来了一群对逆向工程感兴趣的同学,我这里带领大家来一次逆向工程初体验. 在这里我们会 修改弹框的值 修改植物大战僵尸的阳光 编译并运行以下C程序 使用的工具:Devcpp #include<windows.h> int main(){ MessageBox(0,"Hello world","title",MB_OK); return 0; } 编译后如上所示. 运行结果如下: 下面我们来一步一步修改HelloWorld IDA的基本使