53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Proteus仿真和代码)53-2按键加减操作(51单片机C语言实例Pro
2022-06-15 09:09:39 12KB 53-2按键加减操作(51单片机
114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真和代码)114-串口通讯中断应用(51单片机C语言实例Proteus仿真
2022-06-15 09:09:09 13KB 114-串口通讯中断应用(51单
基于keil5 5.35版本,编译环境V6,使用S32K144官方开发板,下载,三色灯可闪烁
2022-06-14 22:51:22 7.79MB KEIL S32K144 移植
1
通过51单片机搭建模拟电压转为数字电压的电路,用ADTLC549芯片实现模数转换,并且通过LED显示器显示出来。编译通过并且仿真运行可以达到想要的效果,实际搭建电路也可以实现但有轻微的闪烁。
2022-06-14 22:45:38 130KB ADTLC549 数字电压表 51单片机
1
使用了这个实例好长的时间,我的毕业设计就是根据此示例完成的。代码写的非常的清晰,重要的是使用了proteus仿真,编译器是ADS。
2022-06-14 18:33:12 1.89MB UCOS
1
51单片机 点阵8x8 kiel proteus仿真
2022-06-13 17:44:32 26KB 51单片机 点阵8x8 kiel
1
proteus软件仿真 部分文件原创~~ 资料很全~~学习中各个过程的难题都有例子 文件头—————————————————————————————————————————必要 #include #define uint unsigned int #define uchar unsigned char 移位函数——————————————————————————————————————————走马灯 #include temp=_cror_(temp,1); 数码管数字代码———————————————————————————————————————从0到15 正 uchar code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71}; 反 uchar code table[]={ 0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90}; 延时函数——————————————————————————————————————————z毫秒 #define uint unsigned int #define uchar unsigned char void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } 定时器0使用——————————————————————————————————————工作方式1 TMOD=0x11; TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; void time0() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; } 定时器1使用———————————————————————————————————————工作方式1 TMOD=0x11; TH1=(65536-50000)/256; TL1=(65536-50000)%256; EA=1; ET1=1; TR1=1; void time1() interrupt 3 { TH1=(65536-50000)/256; TL1=(65536-50000)%256; } 外部中断0使用————————————————————————————————————————检测下降沿 EA=1; EX0=1; IT0=1; TCON=0x01; 数码管显示数字函数——————————————————————————————————————只显示百十个,可以扩展 void display(uchar bai,uchar shi,uchar ge) { P0=0xff; wela=1; P0=0xfe; wela=0; dula=1; P0=table[bai]; dula=0; delay(1); P0=0xff; wela=1; P0=0xfd; wela=0; dula=1; P0=table[shi]; dula=0; delay(1); P0=0xff; wela=1; P0=0xfb; wela=0; dula=1; P0=table[ge]; dula=0; delay(1); } 控制液晶—————————————————————————————————限16*2小液晶 sbit rs=P3^5; sbit e= P3^4 ; sbit wela=P2^7; sbit dula=P2^6; uchar love1[]={"i say love."}; uchar love2[]={"i love you."}; void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } int write_com(uchar com) { P0=com; rs=0; e=1; delay(5); e=0; } int write_date(uchar date) { P0=date; rs=1; e=1; delay(5); e=0; } init() { wela=0; dula=0; e=0; write_com(0x38); write_com(0x0e); write_com(0x06); write_com(0x01); write_com(0x80); } 串口通信——————————————————————————————————————————波特率 9600 TMOD=0x20; TH1=0xfd; //9600 TL1=0xfd; PCON=0x00; SCON=0x50;//方式1 EA=1; ES=1; TR1=1; ES=0; SBUF=**; while(!TI); TI=0; ES=1; void ser() interrupt 4 { **=SBUF; RI=0; } IIC总线的应用————————————————————————————————————————————————EEPROM上测试 sbit sck=P2^1; sbit sda=P2^0; sbit ACC7=ACC^7; sbit ACC0=ACC^0; void delay(int z) { uchar i,j; for(i=z;i>0;i--) for(j=110;j>0;j--); } void deluy() {;;} void start() { sda=1; deluy(); sck=1; deluy(); sda=0; deluy(); } void stop() { sda=0; deluy(); sck=1; deluy(); sda=1; deluy(); } respond() { uchar i; sck=1; while(sda!=0&&i<250)i++; sck=0; deluy(); } void write_byte(uchar date) { uchar i,temp; temp=date; for(i=0;i<8;i++) { temp=temp<<1; sck=0; deluy(); sda=CY; deluy(); sck=1; deluy(); } sck=0; deluy(); sda=1; deluy(); } uchar read_byte() { uchar i; sck=0; deluy(); sda=1; deluy(); for(i=0;i<8;i++) { ACC<<=1; sck=1; deluy(); ACC0=sda; sck=0; } return ACC; } write_date(uchar add,uchar date) { start(); write_byte(0xa0); respond(); write_byte(add); respond(); write_byte(date); respond(); stop(); } read_date(uchar add) { uchar k; start(); write_byte(0xa0); respond(); write_byte(add); respond(); start(); write_byte(0xa1); respond(); k=read_byte(); stop(); return k; } DS18b28的应用—————————————————————————————————————————————一些寄存器可以按需修改 bit DS18B20_init() { bit flag; DQ=1; for(time=0;time<2;time++); DQ=0; for(time=0;time<200;time++); DQ=1; for(time=0;time<10;time++); flag=DQ; for(time=0;time<200;time++); return (flag); } void writecom(uchar com) { uchar i; for(i=0;i<8;i++) { DQ=1; _nop_(); DQ=0; DQ=com&0x01; for(time=0;time<10;time++); DQ=1; for(time=0;time<1;time++); com>>=1; } for(time=0;time<4;time++); } uchar readdat() { uchar i,dat; dat=0; for(i=0;i<8;i++) { DQ=1; _nop_(); DQ=0; dat>>=1; _nop_(); DQ=1; for(time=0;time<2;time++); if(DQ==1) dat|=0x80; else dat|=0x00; for(time=0;time<8;time++); } return(dat); } void get_temp() { DS18B20_init(); writecom(0xCC); writecom(0x44); for(time=0;time<100;time++); DS18B20_init(); writecom(0xCC); writecom(0xBE); } void main() { uchar i,tl,th; uchar zhen,xiao; while(1) { get_temp(); tl=readdat(); th=readdat(); zhen=(th*256+tl)/16; xiao=(tl%16)*10/16; } } AD转换——————————————————————————————————————————————ADC0804,其他不适用,temp 0~255之间 关键是接口 sbit wr=P3^6; sbit rd=P3^7; sbit cs=P3^2; void init() { cs=0; } void start() { wr=1; wr=0; wr=1; } void huoqu () { uchar temp; temp=0; start(); rd=0; temp=P1; rd=1; retrn temp; } DA转换—————————————————————————————————————————————关键是接口 sbit wr=P3^6; sbit da=P3^2; init() { da=0; } start() { wr=1; wr=0; wr=1; } 键盘的使用—————————————————————————————————————————4X4 含消抖效果 uchar key; void scan(void) { uchar scode,rcode; P3=0xf0; if((P3&0xf0)!=0xf0) { delay(5); if((P3&0xf0)!=0xf0) { scode=0xfe; while((scode&0x10)!=0) { P3=scode; if((P3&0xf0)!=0xf0) { rcode=(P3&0xf0)|0x0f; key=(~scode)+(~rcode); switch(key) { case 0x11:key=0;break; case 0x21:key=1;break; case 0x41:key=2;break; case 0x81:key=3;break; case 0x12:key=4;break; case 0x22:key=5;break; case 0x42:key=6;break; case 0x82:key=7;break; case 0x14:key=8;break; case 0x24:key=9;break; case 0x44:key=10;break; case 0x84:key=11;break; case 0x18:key=12;break; case 0x28:key=13;break; case 0x48:key=14;break; case 0x88:key=15;break; default : key=16;break; } } else scode=(scode<<1)|0x01; } } } else key=16; }
2022-06-13 10:49:41 10.84MB 51 单片机 整合
1
keil中所有库函数的帮助文件。 The C51 run-time library provides you with more than 100 predefined functions and macros to use in your 8051 C programs. This library makes embedded software development easier by providing you with routines that perform common programming tasks such as string and buffer manipulation, data conversion, and floating-point math operations. Typically, the routines in this library conform to the ANSI C Standard. However, some functions differ slightly in order to take advantage of the features found in the 8051 architecture. For example, the function isdigit returns a bit value as opposed to an int. Where possible, function return types and argument types are adjusted to use the smallest possible data type. In addition, unsigned data types are favored over signed types. These alterations to the standard library provide a maximum of performance while also reducing program size. All routines in this library are implemented to be independent of and to function using any register bank.
2022-06-13 09:26:30 71KB c51lib.chm Keil 帮助 hlp
1
30例经典应用实例,附带代码与Proteus仿真。 1.1 矩阵键盘及数码管显示系统 1.2 独立连接式键盘及液晶显示系统 1.3 音乐播放器 1.4 电子琴 1.5 电子门铃 1.6 数控电压源系统 2.1 电子时钟系统。。。。。 等等很多就不一一简述了,反正基本单片机实验都有
2022-06-12 19:09:26 908KB 单片机 proteus 嵌入式硬件
1
项目效果:启动仿真,数码管初始化显示0000,然后显示温度和湿度,调节DHT11的温度或者湿度数码管显示调节后的温度和湿度. 2.使用的STM32F103C6芯片,可以参考资源内部的配置文件,来进行配置其他STM32的芯片. 3.STM32F103C6,该芯片在Proteus仿真中的稳定性较高。 4.该资源中还有2种形式的DHT11驱动文件,主程序使用的是DHT11资料中的DHT11库中的驱动文件. 5.DHT11库中的数据线接MCU中的PA4端口,如果要接其他端口,可以修改头文件中的端口配置或者使用DHT11资料中的DHT11资料里面的文件. 6.如果对程序有疑问可以私信哟.
2022-06-11 19:33:21 8.54MB stm32 DHT11 数码管
1