stm32 MODBUS程序代码例程,在ST 32位处理器上的实现
上传时间: 2014-01-17
上传用户:维子哥哥
9针的打印机驱动程序,单片机采用ST uPSD3254A
上传时间: 2017-09-11
上传用户:zhuyibin
SX1276用ST单片机编写的通讯程序,增加了PA电路
上传时间: 2018-11-12
上传用户:lff18020
ST-M3-LITE-STM32F205RG最小系统原理图+测试程序
上传时间: 2022-05-09
上传用户:yui0900826
ST-M3-LITE-STM32F105RB最小系统原理图+测试程序
上传时间: 2022-05-09
上传用户:wangshoupeng199
ST-M3-LITE-STM32F103C8T6最小系统原理图+测试程序
标签: stm32
上传时间: 2022-05-09
上传用户:d1997wayne
ST-Link仿真器驱动程序(IAR EWARM V5升级版)
上传时间: 2013-04-24
上传用户:hewenzhi
附件是51mini仿真器中文使用手册,其中包括有51mini的驱动,USB安装指南及USB驱动程序。 2003 年 SST 公司推出了 SST89C54/58 芯片,并且在官方网站公布了单片机仿真程序,配合 KEIL 可以实现标 准 51 内核芯片的单步调试等等,从而实现了一个简单的 51 单片机仿真方案,将仿真器直接拉低到一颗芯片的价 格。 但是, 1 分钱 1 分货,这个仿真方案由于先天的缺陷存在若干重大问题: 占用 p30,p31 端口 占用定时器 2 占用 8 个 sp 空间 运行速度慢 最高通信速度只有 38400,无法运行 c 语言程序。(由于 c 语言程序会调用库文件,每单步一次 的时间足够你吃个早饭) 所以,网上大量销售的这种这种仿真器最多只能仿真跑马灯等简单程序,并没有实际使用价值。51mini 是深 圳市学林电子有限公司开发生产的具有自主知识产权的新一代专业仿真器,采用双 CPU 方案,一颗负责和 KEIL 解 释,另外一颗负责运行用户程序,同时巧妙利用 CPU 的 P4 口通信,释放 51 的 P30,P31,完美解决了上述问题, 体积更小,是目前价格最低的专业级别 51 单片机仿真器,足以胜任大型项目开发。 51mini仿真器创新设计: 1 三明治夹心双面贴片,体积缩小到只有芯片大小,真正的“嵌入式”结构。 2 大量采用最新工艺和器件,全贴片安装,进口钽电容,贴片电解。 3 采用快恢复保险,即便短路也可有效保护。 4 单 USB 接口,无需外接电源和串口,台式电脑、无串口的笔记本均适用。三 CPU 设计,采用仿真芯片+监控 芯片+USB 芯片结构,是一款真正独立的仿真器,不需要依赖开发板运行。 5 下载仿真通讯急速 115200bps,较以前版本提高一个数量级(10 倍以上),单步运行如飞。 6 不占资源,无限制真实仿真(32 个 IO、串口、T2 可完全单步仿真),真实仿真 32 条 IO 脚,包括任意使用 P30 和 P31 口。 7 兼容 keilC51 UV2 调试环境支持单步、断点、随时可查看寄存器、变量、IO、内存内容。可仿真各种 51 指 令兼容单片机,ATMEL、Winbond、INTEL、SST、ST 等等。可仿真 ALE 禁止,可仿真 PCA,可仿真双 DPTR,可仿真 硬件 SPI。媲美 2000 元级别专业仿真器! 8 独创多声响和 led 指示实时系统状态和自检。 9 独创长按复位键自动进入脱机运行模式,这时仿真机就相当于目标板上烧好的一个芯片,可以更加真实的运 行。这种情况下实际上就变了一个下载器,而且下次上电时仍然可以运行上次下载的程序。 USB 驱动的安装 第一步:用随机 USB 通讯电缆连接仪器的 USB 插座和计算机 USB口;显示找到新硬件向导,选择“从列表或指定位置安装(高级)”选项,进入下一步; 第二步:选择“在搜索中包括这个位置”,点击“浏览”,定位到配套驱动光盘的驱动程序文件夹,如 E:\驱动程序\XLISP 驱动程序\USBDRIVER2.0\,进入下一步; 第三步:弹出“硬件安装”对话框,如果系统提示“没有通过Windows 徽标测试…”,不用理会,点击“仍然继续”,向导即开始安装软件;然后弹出“完成找到新硬件向导”对话框,点击完成。 第四步:系统第二次弹出“找到新的硬件向导”对话框,重复以上几个步骤; 右下角弹出对话框“新硬件已安装并可以使用了”,表明 USB 驱动已成功安装。你可以进入系统的:控制面板\系统\硬件\设备管理器中看到以下端口信息, 表示系统已经正确的安装了 USB 驱动。
上传时间: 2013-11-02
上传用户:猫爱薛定谔
温湿度传感器 sht11 仿真程序 sbit out =P3^0; //加热口 //sbit input =P1^1;//检测口 //sbit speek =P2^0;//报警 sbit clo =P3^7;//时钟 sbit ST =P3^5;//开始 sbit EOC =P3^6;//成功信号 sbit gwei =P3^4;//个位 sbit swei =P3^3;//十位 sbit bwei =P3^2;//百位 sbit qwei =P3^1;//千位 sbit speak =P0^0;//报警音 sbit bjled =P0^1;//报警灯 sbit zcled =P0^2;//正常LED int count; uchar xianzhi;//取转换结果 uchar seth;//高时间 uchar setl;//低时间 uchar seth_mi;//高时间 uchar setl_mi;//低时间 bit hlbz;//高低标志 bit clbz; bit spbz; ///定时中断程序/// void t0 (void) interrupt 1 using 0 { TH0=(65536-200)/256;//5ms*200=1000ms=1s TL0=(65536-200)%256; clo=!clo;//产生时钟 if(count>5000) { if(hlbz) { if(seth_mi==0){seth_mi=seth;hlbz=0;out=0;} else seth_mi--; } if(!hlbz) { if(setl_mi==0){setl_mi=setl;hlbz=1;out=1;} else setl_mi--; } count=0; } else count++; } ///////////// ///////延时/////// delay(int i) { while(--i); } ///////显示处理/////// xianshi() { int abcd=0; int i; for (i=0;i<5;i++) { abcd=xianzhi; gwei=1; swei=1; bwei=1; qwei=1; P1=dispcode[abcd/1000]; qwei=0; delay(70); qwei=1; abcd=abcd%1000; P1=dispcode[abcd/100]; bwei=0; delay(70); bwei=1; abcd=abcd%100; P1=dispcode[abcd/10]; swei=0; delay(70); swei=1; abcd=abcd%10; P1=dispcode[abcd]; gwei=0; delay(70); gwei=1; } } doing() { if(xianzhi>100) {bjled=0;speak=1;zcled=1;} else {bjled=1;speak=0;zcled=0;} } void main(void) { seth=60;//h60秒 setl=90;//l90秒 seth_mi=60;//h60秒 setl_mi=90;//l90秒 TMOD=0X01;//定时0 16位工作模式 TH0=(65536-200)/256; TL0=(65536-200)%256; TR0=1; //开始计时 ET0=1; //开定时0中断 EA=1; //开全中断 while(1) { ST=0; _nop_(); ST=1; _nop_(); ST=0; // EOC=0; xianshi(); while(!EOC) { xianshi(); } xianzhi=P2; xianshi(); doing(); } }
上传时间: 2013-11-07
上传用户:我们的船长
温湿度传感器 sht11 仿真程序 sbit out =P3^0; //加热口 //sbit input =P1^1;//检测口 //sbit speek =P2^0;//报警 sbit clo =P3^7;//时钟 sbit ST =P3^5;//开始 sbit EOC =P3^6;//成功信号 sbit gwei =P3^4;//个位 sbit swei =P3^3;//十位 sbit bwei =P3^2;//百位 sbit qwei =P3^1;//千位 sbit speak =P0^0;//报警音 sbit bjled =P0^1;//报警灯 sbit zcled =P0^2;//正常LED int count; uchar xianzhi;//取转换结果 uchar seth;//高时间 uchar setl;//低时间 uchar seth_mi;//高时间 uchar setl_mi;//低时间 bit hlbz;//高低标志 bit clbz; bit spbz; ///定时中断程序/// void t0 (void) interrupt 1 using 0 { TH0=(65536-200)/256;//5ms*200=1000ms=1s TL0=(65536-200)%256; clo=!clo;//产生时钟 if(count>5000) { if(hlbz) { if(seth_mi==0){seth_mi=seth;hlbz=0;out=0;} else seth_mi--; } if(!hlbz) { if(setl_mi==0){setl_mi=setl;hlbz=1;out=1;} else setl_mi--; } count=0; } else count++; } ///////////// ///////延时/////// delay(int i) { while(--i); } ///////显示处理/////// xianshi() { int abcd=0; int i; for (i=0;i<5;i++) { abcd=xianzhi; gwei=1; swei=1; bwei=1; qwei=1; P1=dispcode[abcd/1000]; qwei=0; delay(70); qwei=1; abcd=abcd%1000; P1=dispcode[abcd/100]; bwei=0; delay(70); bwei=1; abcd=abcd%100; P1=dispcode[abcd/10]; swei=0; delay(70); swei=1; abcd=abcd%10; P1=dispcode[abcd]; gwei=0; delay(70); gwei=1; } } doing() { if(xianzhi>100) {bjled=0;speak=1;zcled=1;} else {bjled=1;speak=0;zcled=0;} } void main(void) { seth=60;//h60秒 setl=90;//l90秒 seth_mi=60;//h60秒 setl_mi=90;//l90秒 TMOD=0X01;//定时0 16位工作模式 TH0=(65536-200)/256; TL0=(65536-200)%256; TR0=1; //开始计时 ET0=1; //开定时0中断 EA=1; //开全中断 while(1) { ST=0; _nop_(); ST=1; _nop_(); ST=0; // EOC=0; xianshi(); while(!EOC) { xianshi(); } xianzhi=P2; xianshi(); doing(); } }
上传时间: 2013-10-16
上传用户:黄蛋的蛋黄