Altium Designer画的原理图和PCB图
Atmega16l单片机源码如下:
#include #include #define uint unsigned int #define uchar unsigned char uchar zd=0,c=0; uint iv=0,ii=0,ov=0,oi=0,sj=0,b=0; uchar table[3]={8,8,8}; #pragma data:code flash uint table1[]={0X3f,0X06,0X5b,0X4f,0X66,0X6d,0X7d,0X07,0X7f,0X6f,0X77,0X7c,0X39,0X5e,0X79,0X71,0X00, 0X40,0XFF}; flash uint table2[]={ 0,5,10,16,21,27,32,38,43,48,54,59,64,69,75,80,85,90,95,100, 105,110,115,120,124,129,134,138,143,147,152,156,160,164,168,172,176,180,184,187, 191,194,198,201,204,207,210,213,216,219,221,224,226,228,230,233,234,236,238,240, 241,242,244,245,246,247,247,248,249,249,249,249,250,249,249,249,249,248,247,247, 246,245,244,242,241,240,238,236,234,233,230,228,226,224,221,219,216,213,210,207, 204,201,198,194,191,187,184,180,176,172,168,164,160,156,152,147,143,138,134,129, 125,120,115,110,105,100,95,90,85,80,75,69,64,59,54,48,43,38,32,27, 21,16,10,5, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0}; flash uint table3[]={ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0, 0,5,10,16,21,27,32,38,43,48,54,59,64,69,75,80,85,90,95,100, 105,110,115,120,124,129,134,138,143,147,152,156,160,164,168,172,176,180,184,187, 191,194,198,201,204,207,210,213,216,219,221,224,226,228,230,233,234,236,238,240, 241,242,244,245,246,247,247,248,249,249,249,249,250,249,249,249,249,248,247,247, 246,245,244,242,241,240,238,236,234,233,230,228,226,224,221,219,216,213,210,207, 204,201,198,194,191,187,184,180,176,172,168,164,160,156,152,147,143,138,134,129, 125,120,115,110,105,100,95,90,85,80,75,69,64,59,54,48,43,38,32,27, 21,16,10,5}; #pragma interrupt_handler timer2_capt_isr:5 #pragma interrupt_handler adc_sj:15 void timer2_capt_isr() { TCNT2=5; c++; if(c>=2) { c=0; OCR1AH=0; OCR1AL=table2[b]; OCR1BH=0; OCR1BL=table3[b]; b++; if(b>=288){b=0;zd++;} } } void timer1_init() { TCCR2=0X01; TCNT2=5; OCR1AH=0; OCR1AL=0; OCR1BH=0; OCR1BL=0; ICR1=250; TCCR1A=0XA0; TCCR1B=0X11; } void init_devices() { DDRD|=BIT(4); DDRD|=BIT(5); timer1_init(); MCUCR=0X00; GICR=0X00; TIMSK=0X40; SREG|=BIT(7); } void led()//正常指示灯 { PORTB|=BIT(3); PORTB&=~BIT(4); } void led1()//故障指示灯 { PORTB&=~BIT(3); PORTB|=BIT(4); } void led2()//报警指示灯 { PORTB|=BIT(4); PORTB|=BIT(3); } void ad_init(uchar a)//AD转换 { // uint sj; SFIOR=0;//设置ADC为连续工作模式 ADMUX=a;//设置那一路ADC转换 ADCSR=0X80;//ADC转换使能 ADCSR|=BIT(ADSC);//启动ADC ADCSR|=BIT(ADIE); SREG|=BIT(7); // while(!(ADCSR&(BIT(ADIF))));//等待ADC转换完成 // sj=ADCL; // sj=sj+256*ADCH; // ADCSR|=BIT(ADIF); // ADCSR=0X00;//关闭ADC // return sj; } void show(uchar bai,uchar shi,uchar ge ) { PORTC=table1[bai]; PORTA|=BIT(7); PORTA&=~BIT(7); PORTC=table1[shi]; PORTA|=BIT(6); PORTA&=~BIT(6); PORTC=table1[ge]; PORTA|=BIT(5); PORTA&=~BIT(5); } void adc_sj() { sj=ADCL; sj=sj+256*ADCH; ADCSR|=BIT(ADIF); ADCSR=0X00;//关闭ADC } void delay(uint ms) { uint x,y; for(x=0;x for(y=0;y<1141;y++); } } void main() { uchar f=0; uint ci=0; DDRC=0XFF; DDRA|=BIT(5); DDRA|=BIT(6); DDRA|=BIT(7); PORTC=0X00; PORTA&=~BIT(7); PORTA&=~BIT(6); PORTA&=~BIT(5); DDRA&=~BIT(1); PORTA&=~BIT(1); DDRA&=~BIT(4); PORTA&=~BIT(4); DDRB|=BIT(3); DDRB|=BIT(4); PORTB&=~BIT(3); PORTB&=~BIT(4); DDRB|=BIT(6); PORTB&=~BIT(6); init_devices(); while(1) { if(zd>=80) { zd=0; switch(f) { case 0: table[0]=1;table[1]=17;table[2]=17;f++;ad_init(0x44); break; case 1:sj=sj/51;iv=sj;table[0]=iv/100;table[1]=iv%100/10;table[2]=iv%10;f++;sj=0;led(); break; case 2: table[0]=2;table[1]=17;table[2]=17;f++; break; ……………………
上一篇:ATmega16单片机蓝牙串口控制程序
下一篇:AVR单片机红外解码程序
推荐阅读
史海拾趣
作为电子行业的领军企业,中科芯承担着众多国家重点科研任务。多年来,公司积极参与国家重大科研项目,涉及通信、计算机、航空航天等多个领域。通过不断的技术攻关和创新,中科芯成功完成了500多项国家重点科研任务,获得了国家奖18项、省部级奖近200项。这些成果的取得不仅提升了公司的技术实力,也为中国电子行业的发展做出了巨大贡献。
Displaytech一直致力于技术创新和产品升级。在多年的发展过程中,公司不断推出新的LCD产品,包括触摸屏TFT、单色图形LCD和字符显示模块等。同时,公司还加强了表面贴装能力、PCB组装服务、工具和注塑成型等业务的拓展,进一步提升了整体竞争力。
近期,启英泰伦完成了数千万元的B++轮融资,由水木春锦资本、盛裕资本和自觉资本共同投资。这笔资金将主要用于产品的大规模量产和新产品的研发,以进一步加速启英泰伦在智能语音芯片市场的布局。资本的注入不仅为公司的发展提供了强有力的支持,也反映了市场对启英泰伦技术和市场前景的认可。
面对日益复杂多变的电子市场环境,ANOVA公司始终保持着清醒的头脑和敏锐的洞察力。无论是疫情带来的供应链挑战,还是技术更新换代带来的竞争压力,ANOVA都能迅速应对,不断调整策略,确保公司的稳健发展。同时,ANOVA也积极展望未来,不断探索新的业务领域和技术方向,以期在电子行业中继续保持领先地位。
这五个故事只是ANOVA公司发展过程中的冰山一角,但它们足以展现出ANOVA公司如何在电子行业中逐步崛起,成为一支不可忽视的力量。ANOVA以其卓越的技术实力、全球化的布局和紧密的合作伙伴关系,不断推动着电子行业的发展和进步。
ANOVA公司的全球扩张步伐迅速而稳健。在成功创立之后不久,ANOVA便通过收购ISA,进一步增强了其在全球市场的竞争力。这次收购不仅使ANOVA在全球超过70个国家拥有了监控超过70万台设备的能力,更在北美、南美、欧洲和亚太等关键地区设立了办公室,为公司的全球化战略打下了坚实的基础。ANOVA始终坚持本地化服务,无论客户身处何地,都能享受到最高级别的服务和支持。
ANOVA公司的成功并非偶然,它始终站在技术创新的前沿。公司积极推动新通信技术、电池寿命和移动应用等方面的创新,不断推动电子行业的发展。ANOVA的研发团队不断探索新技术,致力于为客户提供最先进的解决方案,帮助客户在激烈的市场竞争中保持领先地位。
新型的电解电容--QTSTAR电容(导电性高分子铝固体电解电容器) 电解电容器是常用的电子元件,主要应用于滤波、去耦及信号耦合等场合。 1、使用液体电解液的铝电解电容器,由通用电气(GE)公司发表于1908年。 2、使用固态钽电解电容器,由WE和SPRAGUE发表于1953年。 3、使用有有机半导体为电解质的固体OS-CON ...… 查看全部问答∨ |
|
PXA270核心板方案: CPU:PXA270 SDRAM:128M FLASH:32M 接口:USB、SDCARD、SERIAL等 LCD+TOUCH:3.5‘ 支持WIFI 方案可提供:SCH + PCB + BOOM + WINCE ...… 查看全部问答∨ |
|
毕设要做一个ARM终端采集静态图像压缩后经GPRS模块以彩信的方式发送到用户手机,最近看了一些资料,懂了一点,但还是有很多不是很明白,望各位做过这方面的朋友多指点一下,谢谢了,呵呵 我现在能够控制GPRS模块拨号上网 ...… 查看全部问答∨ |
|
三菱 PLC MX Component 编程 读取块的函数 readBlock(),在C# 中如何调用 三菱 PLC MX Component 编程 读取块的函数 readBlock(),在C# 中如何调用。 在三菱编程手册上 有C++格式的函数的格式说明是 readBlock(string szdevice,int size,out lplData) C# 的没有说明。对这个格式有点疑问   ...… 查看全部问答∨ |
|
如附件,,,,我这样的程序如何写延时?? 我的意思是30US的延时我写个1US的延时,,,然后调30次延时程序好不??有朋友有更好的办法不??? 请把详细程序写出来....朋友帮忙,+- 代表相差的意思… 查看全部问答∨ |