基于MSC51单片机垃圾分类收集系统的设计.pdf
1
RTX51-Tiny,C51单片机RTOS
2022-02-05 22:03:40 935KB 单片机 嵌入式硬件 RTX51
1
C51单片机数字秒表 含程序和接线图
2022-02-04 22:03:23 1.2MB 单片机 嵌入式硬件
C51单片机简易门铃设计 含程序接线图
2022-02-04 22:03:22 24.34MB 单片机 嵌入式硬件
LCD12864显示屏C51单片机驱动源码KEIL工程文件,可做为你的学习设计参考。 void main() { LCD12864_Reset(); //初始化液晶 LCD12864_HAIZI_SET(); //设置为普通模式 Delay_ms(100); LCD12864_NoWaitIdle_COM_Write(0x80); //设置指针 LCD12864_write_word("别人笑我太疯癫,"); //显示内容 LCD12864_NoWaitIdle_COM_Write(0x90); //设置指针 LCD12864_write_word("我笑他人看不穿。"); //显示内容 LCD12864_NoWaitIdle_COM_Write(0x88); //设置指针 LCD12864_write_word("不见五陵豪杰墓,"); //显示内容 LCD12864_NoWaitIdle_COM_Write(0x98); //设置指针 LCD12864_write_word("无花无酒锄作田。"); //显示内容 while(1) { } } //**************************************************** //MS延时函数(12M晶振下测试) //**************************************************** void Delay_ms(unsigned int n) { unsigned int i,j; for(i=0;i
LCD1602显示屏+DS18B20测温C51单片机驱动源码KEIL工程文件,可作为你的学习设计参考。 void main() { LCD1602_Init(); //初始化LCD1602 DS1302_Init(); //初始化DS1302 LCD1602_write_com(0x80); LCD1602_write_word("Welcome to use!"); Temp_Buffer = Get_temp(); //读取DS18B20的值 Delay_ms(1000); LCD1602_write_com(0x01); //清屏 while(1) { DS1302_GetTime(&DS1302Buffer); //获取当前RTCC值 if(Flag_Time_Refresh == 1 && Flag_KEY_Set == 0) //数据更新时才刷新LCD { Flag_Time_Refresh = 0; Display_RTCC(); //显示实时时钟 Display_Temp(); //获取并显示温度值 } Scan_Key(); //按键扫描 switch( KEY_NUM ) { case 1: //按键1执行程序 KEY_NUM = 0; //清空按键标志 Flag_KEY_Set = ~Flag_KEY_Set; //设置按键标志位翻转 if(Flag_KEY_Set) { LCD1602_write_com(0x0d); //LCD1602指针闪烁开 LCD1602_write_com(0x80+ 3); //指针设置到第一行第4列 KEY2_Count = 0; //按键S2计数清零 } else { LCD1602_write_com(0x0c); //LCD1602指针闪烁关 } break; case 2: //按键2执行程序 KEY_NUM = 0; //清空按键标志 if(Flag_KEY_Set) //在设置状态时运行 { KEY2_Count++; if(KEY2_Count == 7) KEY2_Count = 0; switch(KEY2_Count) { case 0: LCD1602_write_com(0x80+ 3); //指针指向年,闪烁 break; case 1: LCD1602_write_com(0x80+ 6); //指针指向月,闪烁 break; case 2: LCD1602_write_com(0x80+ 9); //指针指向日,闪烁 break; case 3: LCD1602_write_com(0x80+ 15); //指针指向星期,闪烁 break; case 4: LCD1602_write_com(0x80+ 0x40 + 1); //指针指向小时,闪烁 break; case 5: LCD1602_write_com(0x80+ 0x40 + 4); //指针指向分钟,闪烁 break; case 6: LCD1602_write_com(0x80+ 0x40 + 7); //指针指向秒钟,闪烁 break; default : break; } } break; case 3: //按键3执行程序 KEY_NUM = 0; //清空按键标志 if(Flag_KEY_Set) //在设置状态时运行 { switch(KEY2_Count) { case 0: DS1302Buffer.Year++; if(DS1302Buffer.
所用步进电机导轨为两相六线的42电机(实际上为两相四线 两个com端未接) 驱动器选择了以3086A-MFP10S为芯片的模块 增加记忆回归功能 并且定义了导轨长度 使其运动时不超过限度 k1左滑 k2右划 k3回归中心点 k4重新校准中心点 文章地址: https://blog.csdn.net/weixin_53403301/article/details/122658780
2022-01-24 11:01:41 440KB 单片机 stm32 嵌入式硬件 arm
1
基于51单片机设计的DS1302时钟LCD1602显示按键可设置时钟的FEIL工程软件源码,可做为你的学习设计参考。 /******************************************************************************* * 实验名 : 万年历实验 * 使用的IO : * 实验效果 :1602显示时钟,按K3进入时钟设置,按K1选择设置的时分秒日月,按K2选择 *选择设置加1。 * 注意 : *******************************************************************************/ #include #include"lcd.h" #include"ds1302.h" sbit K1=P3^1; sbit K2=P3^0; sbit K3=P3^2; sbit K4=P3^3; //管脚接线 void Int0Configuration(); void LcdDisplay(); uns
基于C51单片机设计的LCD1602滚动显示的DEMO软件例程源码 #include typedef unsigned char uint8; typedef unsigned int uint16; sbit rs=P2^6; sbit rw=P2^5; sbit e=P2^7; uint8 a[16]="perchin designed"; uint8 b[27]="welcome to the world of mcu"; void delay(uint16 i) //1us { while(i--); } void wrc(uint8 c) { delay(1000); rs=0; rw=0; e=0; P0=c; e=1; delay(10); e=0; /* P0=c<<4; e=1; e=0;*/ //四位的LCD要加上 } void wrd(uint8 dat) { delay(1000); rs=1; rw=0; e=0; P0=dat; e=1; delay(10); e=0; /* P0
STM32单片机C51单片机外围常用芯片及模块技术资料手册等文档资料合集: 74系列芯片的型号区别与功能略表.pdf 9012三极管.pdf AMS1117.pdf AO3401.pdf AT24C64资料集 CAN资料集 CH340DS1.PDF DHT11.pdf DS1820资料集 ESP8266相关资料 HC-05蓝牙 LCD12864资料集 LCD1602资料集 MAX3232.pdf MC-306规格书_爱普生32.768kHz晶振.pdf MP2359直流降压_转换器.pdf NRF24L01资料集 OLED显示屏资料集 PCF8563资料集 RS485资料集 RT9193-33.pdf SN74HC595.pdf sp3232中文资料.pdf SS14.pdf ULN2003.pdf W25Q16资料集 华为PCB布线规范.pdf 步进电机资料集 热敏电阻测温资料集 红外遥控资料集