PC机通过上层软件控制单片机LED的亮灭或者控制LED的闪烁及闪烁时间,上层软件用户名密码均为admin 注意PROTEUS串口仿真需要配合虚拟串口软件才能工作
上位机(包含源码)软件说明:
发送数据解析
字节1、2:0x55 0xaa 数据是否正确判断标志
字节3:
0x01 ------单个LED控制手动控制
0x02 ------单个LED控制自动闪烁
字节4
此字节从低位到高位依次控制LED0-LED7,例如0x01表示手动点亮LED0或者LED0自动闪烁;0x28表示手动点 亮LED3、LED5或者LED3、LED5自动闪烁
字节5、6:表示闪烁时间(6高8位 5低8位) 取值范围0-5000
程序源码预览:
#include #define uint8 unsigned char #define uint16 unsigned int uint8 receive_buffer[6]; //存放接收到的数据 uint8 i,k; void delay1ms(uint16 m) //1ms延时程序 { uint8 j; while(m--) for(j=0;j<112;j++); } void main() { uint16 time; P0 = 0xff; //初始化LED状态,熄灭 TMOD = 0x20; //定时器1工作在方式2 TH1 = 0xfd; TL1 = 0xfd; //波特率9600 TR1 = 1; //启动定时器1 EA = 1; //开启总中断 SM0 = 0; SM1 = 1; //串行口工作方式1 REN = 1; //允许串行接收 ES = 1; //开启串行口中断 while(1) { if((receive_buffer[0] == 0x55) && (receive_buffer[1] == 0xaa)) //如果接收到0x55 0xaa说明接收到的数据是正确的 { time = ((uint16)receive_buffer[5] << 8) + (uint16)receive_buffer[4]; //闪烁时间 switch(receive_buffer[2]) { case 0x01: //手动控制LED亮灭 P0 = ~receive_buffer[3]; break; case 0x02: //LED自动闪烁 P0 = ~receive_buffer[3]; delay1ms(time); P0 = 0xff; delay1ms(time); break; default: break; } } } } void uart_int() interrupt 4 { if(RI == 1) { RI = 0; receive_buffer[i] = SBUF; i++; if(i == 6) { i = 0; k = 0; P0 = 0xff; } } }
上一篇:DS18B20.h LCD1602.h头文件下载 温度和液晶 调试ok 可直接调用
下一篇:Keil_uvision4详细使用教程(图文并解)
推荐阅读
史海拾趣
AAEON公司是一家总部位于台湾的全球性电子公司,专注于提供嵌入式计算解决方案和人工智能应用平台。以下是关于该公司发展的五个相关故事:
公司成立和初期发展: AAEON公司成立于1992年,最初主要从事电脑主板的设计和生产。公司在成立初期致力于提供高质量、高性能的计算解决方案,迅速在台湾本地市场建立了良好的声誉。
技术创新和产品多样化: 随着技术的发展和市场需求的变化,AAEON开始进行技术创新,并逐步扩展产品线。公司不仅持续改进和推出新型的嵌入式计算产品,还积极涉足人工智能领域,开发智能边缘计算平台和解决方案。
国际市场拓展: 为了进一步扩大业务规模,AAEON积极拓展国际市场。公司与全球各地的合作伙伴建立了广泛的合作关系,产品销售网络覆盖了亚洲、欧洲、北美和其他地区。公司还在一些国家设立了分支机构和办事处,加强了对当地市场的开拓和服务。
合作伙伴关系和生态系统建设: AAEON与众多的合作伙伴建立了紧密的合作关系,共同推动产品的创新和市场拓展。公司与主流的芯片厂商、系统集成商、软件开发商等建立了长期稳定的合作关系,共同打造了完善的生态系统。
未来展望和发展方向: AAEON将继续致力于技术创新和产品升级,加强在嵌入式计算和人工智能领域的领先地位。公司将不断推出符合市场需求的新产品和解决方案,为客户提供更优质的服务和支持。同时,AAEON将继续加强与合作伙伴之间的合作,共同推动行业的发展和进步。
BK Precision一直将品质管理视为企业发展的核心。公司建立了严格的质量管理体系,从原材料采购到产品生产、检验、出厂等各个环节都进行严格把控。同时,公司还注重持续创新,不断推出符合市场需求的新产品。通过引进先进的生产设备和技术手段,BK Precision不断提高生产效率和产品质量,为客户提供更优质的产品和服务。
随着国内市场的饱和,C-MAX Time Solutions公司开始将目光投向国际市场。公司通过设立海外分支机构、参加国际展会等方式,积极推广自己的产品和服务。同时,公司还加大了对国际标准的研究和遵循力度,以确保其产品在全球范围内都能得到广泛认可和应用。这一国际化布局不仅提升了C-MAX的竞争力,也为其未来的发展奠定了坚实基础。
随着业务的不断发展,C-MAX Time Solutions公司开始寻求与行业内其他企业的战略合作。通过与一家知名通信设备制造商的合作,C-MAX成功将其时间同步技术融入对方的设备中,从而实现了产品的互补和市场的共同开拓。这一合作不仅拓宽了C-MAX的业务范围,也提高了其品牌在行业内的知名度和影响力。
近年来,佰鸿公司开始将业务触角延伸至再生医学领域。通过多年的努力,公司成功建立了再生医学医疗与健康科技生态圈,并逐步实现了产业集群化。在再生医学领域,佰鸿不仅建立了产业化场地和研发设备,还计划在未来几年内打造国际领先的再生医学产业集群。这一多元化的发展战略,使得佰鸿在电子行业之外,也找到了新的增长点。
面对市场的不断变化和技术的不断进步,佰鸿公司始终保持着敏锐的洞察力和应变能力。近年来,随着LED行业的竞争日益激烈,公司开始积极寻求转型升级之路。通过调整产品结构、优化生产流程、拓展市场渠道等措施,佰鸿成功实现了从传统LED制造商向综合解决方案提供商的转型。这一转型不仅提升了公司的盈利能力,也为其未来的发展注入了新的活力。
以上五个故事从不同角度展示了佰鸿(BrtLed)公司在电子行业中的发展历程和成就。通过坚持市场导向、扩大生产规模、深耕再生医学领域、坚持技术创新以及积极应对市场变化等措施,佰鸿成功地在激烈的市场竞争中脱颖而出,成为了电子行业的佼佼者。
Linking... global.obj : error LNK2019: unresolved external symbol _SHCreateMenuBar referenced in function "struct HMENU__ * __cdecl GetMenu(struct HWND__ *)" (?GetMenu@@YAPAUHMENU__@@PAUHWND__@@@Z) 就是解决不了啊… 查看全部问答∨ |
芯片设计 从芯片的演变历程中发现,各大LED生产商在上游磊晶技术上不断改进,如利用不同的电极设计控制电流密度,利用ITO薄膜技术令通过LED的电流能平均分布等,使在结构上都尽可能产生最多的。再运用各种不同方法去抽出LED发出的每一粒光子,如生 ...… 查看全部问答∨ |
程序大部分都正常,就是有一个函数不对,程序只要执行到那儿就进入HardFaultException() 中断死住,不知是什么原因 ...… 查看全部问答∨ |
|
问题: TL16C554A现在通讯,在前面两三小时,通讯是正常的。但是过后TL16C554A数据通讯不正常,通过串口检测工具发现发送数据不对,我手动给不正常通道发数据,接受的数据也不正常。TL16C554A通道不正常不是同时开始的。 TL16C554A ...… 查看全部问答∨ |
本帖最后由 ddllxxrr 于 2016-1-7 16:58 编辑 二手原装 NEC MINICUBE2仿真器,有需要的吗? 本站强荐:185娱乐╡城.足球╡真_人.彩票齐全╡手机可投╡注任何游戏. 首次开户送10元.首存送58元.信誉绝对保证185.cc … 查看全部问答∨ |