第一次做。都是用的avr单片机ATMEGA16仿真。。有3个按键控制流水灯程序 和1个单片机按键抗干扰,左右按键要松开才行.
单片机源码:
#include void delay(unsigned int x) { int i,j; for(i=0;i } void button(int i) { if((PINC&(1< delay(20); if((PINC&(1< up(i); } while((PINC&(1< if((PINC&(1< delay(20); if((PINC&(1< down(i); } while((PINC&(1< delay(20); if((PINC&(1< left(i); } while((PINC&(1< } if((PINC&(1< delay(20); if((PINC&(1< right(i); } while((PINC&(1< } void down(int i) { while(i<4) { int k = i; for(i+=4;i<8;i+=4) { PORTA = 1<delay(50); PORTA = 0x00; button(i); } i-=4; for(i+=4;i<16;i+=4) { PORTB = 1<<(i-8); delay(50); PORTB=0x00; button(i); } i-=4; i=k; PORTA = 1<delay(50); button(i); } while(i>3&&i<8) { for(i+=4;i<16;i+=4) { PORTB = 1<<(i-8); delay(50); PORTB=0x00; button(i); } i-=4; for(i-=12;i<8;i+=4) { PORTA=1<delay(50); PORTA=0x00; button(i); } i-=4; } while(i>7&&i<12) { for(i+=4;i<16;i=+4) { PORTB=1<<(i-8); delay(50); PORTB=0x00; button(i); } i-=4; for(i-=12;i<8;i+=4) { PORTA=1<delay(50); PORTA=0x00; button(i); } PORTB=1<<(i-8); delay(50); PORTB=0x00; button(i); } while(i<16&&i>11) { for(i-=12;i<8;i+=4) { PORTA=1<delay(50); PORTA=0x00; button(i); } for( ;i<16;i+=4) { PORTB=1<<(i-8); delay(50); PORTB=0x00; button(i); } i-=4; } } void up(int i) { while(i<4) { PORTA=0x00; for(i+=12;i<16&&i>7;i-=4) { PORTB = 1<<(i-8); delay(50); button(i); } PORTB=0x00; i+=4; for(i-=4;i>=0&&i<8;i-=4) { PORTA=1<delay(50); PORTA=0x00; button(i); } i+=4; } while(i>3&&i<8) { for(i-=4;i>=0;i-=4) { PORTA = 1<delay(50); PORTA=0x00; button(i); } i=+4; for(i+=12;i<16&&i>7;i-=4) { PORTB=1<<(i-8); delay(50); PORTB=0x00; button(i); } PORTA=1<delay(50); button(i); } while(i>7&&i<12) { for(i-=4;i<8&&i>=0;i=-4) { PORTA=1<delay(50); PORTA=0x00; button(i); } i+=4; for(i+=12;i<16&&i>7;i-=4) { PORTB=1<<(i-8); delay(50); PORTB=0x00; button(i); } i+=4; } while(i>11&&i<16) { for(i-=4;i<16&&i>7;i=-4) { PORTB=1<<(i-8); delay(50); PORTB=0x00; button(i); } for( ;i<8&&i>=0;i-=4) { PORTA=1<delay(50); PORTA=0x00; button(i); } i+=16; PORTB=1<<(i-8); delay(50); button(i); } } void right(int i) { while(i<4) { i-=1; for(i+=1;i>=0&&i<4;i+=1) { PORTA = 1<delay(50); button(i); } i-=4; } while(i>3&&i<8) { i-=1; for(i+=1;i>3&&i<8;i+=1) { PORTA = 1<delay(50); button(i); } i-=4; } while(i>7&&i<12) { i-=1; for(i+=1;i>7&&i<12;i+=1) { PORTA = 1<<(i-8); delay(50); button(i); } i-=4; } while(i>11&&i<16) { i-=1; for(i+=1;i>11&&i<16;i+=1) { PORTA = 1<<(i-8); delay(50); button(i); } i-=4; } } void left(int i) { while(i<4) { i+=1; for(i-=1;i>=0&&i<4;i-=1) { PORTA = 1<delay(50); button(i); } i+=4; } while(i>3&&i<8) { i+=1; for(i-=1;i>3&&i<8;i-=1) { PORTA = 1<delay(50); button(i); } i+=4; } while(i>7&&i<12) { i+=1; for(i-=1;i>7&&i<12;i-=1) { PORTA = 1<<(i-8); delay(50); button(i); } i+=4; } while(i>11&&i<16) { i+=1; for(i-=1;i>11&&i<16;i-=1) { PORTA = 1<<(i-8); delay(50); button(i); } i+=4; } } void main() { int i; DDRA = 0xFF; DDRB = 0xFF; PORTC|=(1< { for(i=0;i<4;i++) { PORTA = 1<delay(50); button(i); } } }
上一篇:基于OV7670摄像头的SCCB总线的实现
下一篇:一种智能频率计的设计与制作(AVR) 带仿真与源程序和原理图
推荐阅读
史海拾趣
Ampex Data Systems Group 是一家在电子行业中知名的公司,专注于提供数据存储和处理解决方案。以下是关于Ampex Data Systems Group 公司发展的五个相关故事:
创立与早期发展:Ampex Data Systems Group 公司成立于20世纪50年代,总部位于美国加利福尼亚州的雷迪伍德城。公司最初致力于开发和制造磁带录音机和磁带存储设备,为音频和视频录制领域提供解决方案。在成立初期,Ampex Data Systems Group 通过技术创新和产品质量赢得了客户的信任和市场认可。
技术创新与产品多样化:随着数据存储和处理技术的发展,Ampex Data Systems Group 不断进行技术创新,扩展产品线。公司推出了一系列新型数据存储和处理设备,包括磁带驱动器、磁盘阵列、数据记录器等。这些产品具有高性能、高可靠性和大容量的特点,适用于航空航天、国防、能源和科学研究等领域。
政府合同与军事应用:Ampex Data Systems Group 与政府机构和军事部门建立了紧密的合作关系,为其提供定制化的数据存储和处理解决方案。公司参与了许多重要的国防项目,如雷达系统、导航系统、侦察系统等。Ampex Data Systems Group 的产品被广泛应用于军事通信、情报收集和战术分析等领域,为国家安全和国防事业做出了贡献。
国际市场拓展与合作伙伴关系:除了在美国市场的成功,Ampex Data Systems Group 还积极拓展国际市场,并与全球各种行业领先企业建立了合作伙伴关系。公司在欧洲、亚洲和其他地区设立了销售办事处和合作伙伴网络,扩大了产品的市场份额和影响力。Ampex Data Systems Group 通过与国际合作伙伴的合作,共同推动了技术创新和产品发展。
持续发展与市场竞争力:Ampex Data Systems Group 持续致力于技术创新和产品研发,以保持在电子行业的竞争力。公司不断投入资金和人力资源,加强研发能力,提升产品性能和品质。同时,Ampex Data Systems Group 还注重市场营销和客户服务,与客户保持密切沟通,满足其需求,并持续改进产品和服务,以适应市场变化和客户需求。
这些故事展示了Ampex Data Systems Group 从成立初期到如今在技术创新、产品多样化、政府合同与军事应用、国际市场拓展与合作伙伴关系以及持续发展与市场竞争力等方面取得的重要进展。
Dino-Lite公司一直将产品质量视为企业的生命线。公司建立了严格的质量管理体系和检测流程,确保每一台出厂的产品都符合高标准的质量要求。同时,公司还注重售后服务体系的完善和优化,为客户提供及时、专业的技术支持和解决方案。
正是这种对品质的执着追求和对客户的真诚服务,让Dino-Lite公司赢得了客户的信赖和支持。许多客户都成为了公司的忠实粉丝和长期合作伙伴。
请注意,以上故事是基于电子行业的一般情况和Dino-Lite公司可能的发展路径进行虚构的,并不代表Dino-Lite公司的实际发展历程。如需了解更多关于Dino-Lite公司的具体信息和发展故事,建议查阅相关新闻报道、公司官网或行业分析报告。
1996年,瑞典的工程师Jan Nilsson在电子行业中创立了CYAN公司,专注于高性能网络设备的研发。在初创阶段,CYAN就凭借其独特的技术理念和创新的产品设计,赢得了市场的初步认可。公司推出了一款具有高效能和高可靠性的网络交换机,解决了当时网络传输中的瓶颈问题,从而在市场中崭露头角。
1999年,Carles Puente博士和Ruben Bonet联合创立了Fractus公司,致力于将几何结构天线技术商业化。公司成立之初便取得了重大突破,获得了全球首个分形天线和多重分形天线专利。这些专利不仅展示了Fractus在天线设计领域的领先地位,也为公司后续的发展奠定了坚实的技术基础。
作为一家具有社会责任感的企业,君耀始终注重环保和可持续发展。公司在生产过程中采用环保材料和工艺,减少对环境的影响。同时,君耀还积极参与各种环保活动,推动行业的绿色发展。这种理念不仅提升了公司的社会形象,也为公司的长期发展奠定了坚实的基础。
这些故事只是君耀公司发展历程中的一部分,每个阶段都充满了挑战和机遇。君耀凭借其坚韧不拔的精神、卓越的技术实力和市场洞察力,成功在电子行业中崛起并持续壮大。如需更多详细信息或具体故事,建议查阅君耀公司的官方资料、相关新闻报道或行业分析报告。
本人搜集到的一篇很好的文章,因此转载给各位大虾,希望对工程师们有所帮助: 何靠与电打交道来谋生的人很快都会对任何“带电”的物体生出理性的敬意,哪怕是“带电”的机会很小。然而,需要按时完成一项工作或者使某个关键设备恢复联机的紧迫压力 ...… 查看全部问答∨ |
请大家看下下面打问号几行代码,抛开其功能不说,真的是奇怪了,我都看了又看,头都大了,就是不知道为什么,请朋友们指点下 #include<reg52.h> &nbs ...… 查看全部问答∨ |
error C2065: \'GetRunningObjectTable\' : undeclared identifier error C2065: \'CreateItemMoniker\' : undeclared identifier 我用的是EVC 4.0+SP4… 查看全部问答∨ |
|
STM32的驱动库好用吗?效率高吗?优化的吗?准备上STM32 N多年没买过开发板了,也没用过仿真器了。都是用软件编译调试好,直接ISP,然后通过串口命令开启调试信息的输出。 昨天买了块STM32F103全功能型开发板,他们的办事效率真低(深圳到广州通常当 ...… 查看全部问答∨ |
|
求IAR Embedded Workbench for MCS-51 完整版 各位高手,小弟求IAR Embedded Workbench for MCS-51完整版,有哪位高人有,能否分享一下。我的邮箱jinghongchen@126.com… 查看全部问答∨ |