extern void _nop_ (void); //空操作,相当于8051的NOP指令
extern bit _testbit_ (bit); //测试并清零位,相当于8051的JBC指令
extern unsigned char _cror_ (unsigned char, unsigned char); //字符循环右移
extern unsigned int _iror_ (unsigned int, unsigned char); //整数循环右移
extern unsigned long _lror_ (unsigned long, unsigned char); //长整数循环右移
extern unsigned char _crol_ (unsigned char, unsigned char); //字符循环左移
extern unsigned int _irol_ (unsigned int, unsigned char); //整数循环左移
extern unsigned long _lrol_ (unsigned long, unsigned char); //长整数循环左移
extern unsigned char _chkfloat_(float); //测试并返回源点数状态
关键字:C51 INTRINS
引用地址:
C51的INTRINS.H详解
推荐阅读最新更新时间:2024-03-16 14:31
经典单片机C51多任务代码(改进版)
以前曾经发布过一篇 http://www.51hei.com/mcu/1616.html 这个是改进版,修正了几个小问题. //说明本源码来自网络(DIY超轻量级多任务操作系统一文) //============================================================================ //51实用多任务源码,欢迎引用改进,有新改进功能请回发一份给我谢谢!(请发邮箱) //改进为定时中断内切换任务 //任务内可以设定时间片长短,通过改定时器0初置的方法实现 //置定时器0 TL0=0xFF;的方法可以让出CPU使用权 //七彩惊云改进,QQ540953860 138808807
[单片机]
Proteus C51仿真学习板4——外部中断
与定时器中断不同,外部中断会立即响应,不需要定时时间到才响应,所以外部中断的优先级是最高的。中断是可以2级嵌套,比如:定时器0正在中断,突然外部中断0触发了,那么会打断定时器0,先执行外部中断0,再去执行定时器0中断,而定时器1中断却不能打断定时器0中断。 51单片机的外部中断触发方法有2种——下降沿触发和低电平触发,通过IT0和IT1寄存器控制(ITx=0,低电平触发;ITx=1,下降沿触发)。 注意:使用实体按键时,需进行消抖,否则会造成多次触发。 外部中断0和1输入引脚为P3.2和P3.3,所以要触发外部中断,需要将外部信号连接到P3.2/P3.3引脚。 外部中断的使能开关寄存器为EX0和EX1(EX
[单片机]
C51编程总结-单片机的奇怪知识1(IC输入输出电压)
在使用单片机中过程,我们肯定对数字信号的“0”与“1”,有了深刻的影响,一般来说高电平位“1”为5V(对于5V VCC的单片机来来说),低电平“0”是0V。 实际上我们可能使用供电电压3.3V的芯片,高电平“1”的电压是3.3V。使其与单片机进行交换数据,,这个时候5V单片机能够正常识别到3.3V芯片的 “1”吗? 3.3V芯片与5V单片能不能正常交换数据 IC输入输出电压(也常被成为I/O识别电压),不是看VCC。而是看输入输出电压 我们可以在IC的规格书上查看到相关的参数。以下是CH340部分电气参数。 从表格可以知道,相关输入输出电压有四个参数,分别是 注:看输入输出电压,需要看两个芯片的输入输出电压,
[单片机]
51单片机的出租车计价器C51程序
已通过模拟测试 #include reg52.h unsigned char cir_num,pwm_mach,temp,distance,wait_time,price,distance; unsigned int a,t; sbit pwm_mach=P1^0; sbit key_clean=P3^0;//定义按键位置 sbit key_stop=P3^1; sbit key_cheak=P3^2; sbit key_oneway=P3^3; sbit key_doubleway=P3^4; unsigned char code led_buf ={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07
[单片机]
日韩众厂商转战高清H.264设备市场
数家半导体公司都在小心翼翼地从快速发展但日益商品化的H.264解码器IC市场上撤退,转而在高清H.264编码器/解码器市场上试水。由于日本和韩国消费电子产品制造商将掀起编解码器需求的热潮,芯片供应商都希望在高清数码相机、数字视频便携式摄像机和存储设备等领域占据自己的一席之地。富士通微电子就在上周宣布开始提供一款面向视频格式高规格第4级标准的硬接线H.264编解码器的样品。Ambarella公司则早在一年前就推出了业界首款高清H.264编解码器,但从那以后就几乎没什么消息了。 Ambarella公司首席技术官Les Kohn表示,Ambarella的芯片已经赢得了“数家一流的日本和韩国公司”的设计项目。 目前市场上的
[焦点新闻]
在MCS51单片机中对特殊功能寄存器的C51定义
在开始讲对C51单片机中特殊寄存器(SPR)的定义前,先简单介绍下我们在进行51单片机开发时经常看到的两个关键字 sbit 和 sfr : sfr用于将一个单片机的特殊功能寄存器(specialfunctionregister)赋值给一个变量,这样在后面的程序中就可以中这个变量指引(referto)该寄存器 sbit与sfr用法类似,只是sbit是位操作,用于将某个sfr中具体位赋值给一个变量,这样后面程序就可用通过该变量为该位清0或置1。 接着我们以STC系列的51单片机为例简单的了解下单片机的特殊功能寄存器布局,如下: MCS-51单片机中,除了程序计数器PC和4组工作寄存器组外,其它所有的寄存器均为特殊功能寄存器(S
[单片机]
C51-全双工串行通信
全双工串行通信
[单片机]
Keil C51对C语言的关键词扩展之三: bdata
使用bdata定义的变量即可字寻址,也可比特位寻址。 Keil C51编译器把使用bdata定义的变量放置在8051内部RAM可位寻址区。 bdata定义的变量必须为全局变量,不能在任一函数内部定义bdata类型的变量。 bdata关键词使用方法: int bdata x1; /* 定义可位寻址的整型变量*/ char bdata bary ; /* 定义可位寻址的数组*/ 此时,x1,bary均可按比特位寻址。使用sbit关键词定义可操作其任一比特位的变量。 sbit mybit0 = x1 ^ 0; /* x1的比特0*/ sbit mybit15 = x1 ^ 15; /* x1的比
[单片机]