本帖最后由 iom16vcof 于 2012-8-11 21:18 编辑
自学单片机4个月,通过开发板学了51单片机,通过proteus仿真学了AVR、PIC单片机,IO、定时器、外部中断、串口、数码管动静、矩阵键盘、1602液晶、ds1302、ds18b20、红外这些基础的模块。写过三种单片机AT89C52/STC89C52/ATMEGA16/PIC16F877A万年历程序:MCU+1602+DS1302+DS18B20,显示年月日时分秒星期温度,一路闹钟,三个按键调整时间日期、闹钟。启用闹钟功能,定时时间到,如果不关则响一小时。毕业一年多了,干的工作太闲以及对编程的莫名兴趣决定转行,看招聘条件都挺高的,项目经验、软硬件精通什么的,对自己没什么信心,希望大家指点下要去找嵌入式的工作哪方面需要加强,另外想问下在深圳找嵌入式工作要到什么水平才能找到月薪四千的工作,谢谢大家了。
各模块均用51、AVR、PIC三种单片机实现,例程中三种单片机的型号分明为:AT89C52、ATmega16L、PIC16F877A。
1. lsd:流水灯
说明:单片机控制8个发光二极管。
51lsd
AVRlsd
PIClsd
2. buzzer:蜂鸣器
说明:单片机控制蜂鸣器。
51 buzzer
AVRbuzzer
PICbuzzer
3. relay:继电器
说明:单片机驱动一个双路继电器,继电器吸合后灯亮、蜂鸣器响。
51relay
AVRrelay
PICrelay
4. timer:定时器
说明:三种单片机的定时器使用。
51timer
AVRtimer
PICtimer
5. interrupt:中断
说明:三种单片机的中断使用方法。
51interrupt
AVRinterrupt
PICinterrupt
6. OneSmg:数码管
说明:单片机控制一个数码管。
51OneSmg
AVROneSmg
PICOneSmg
7. SmgClock(delay):数码管电子钟
说明:用延时函数实现的电子钟,没有使用定时器,用延时的方法实现计秒。
51SmgClock
AVRSmgClock
PICSmgClock
8. SmgOneKey:一个独立按键的检测
说明:基于状态机思想的独立按键的检测,每按下一次,8个数码管显示加一。
51SmgOneKey
AVRSmgOneKey
PICSmgOneKey
9. EightSmg999999:八个数码管
说明: 8个数码管延时函数实现计秒(计数),可计99999999秒,每秒数值加1
51EightSmg999999
AVREightSmg999999
PICEightSmg999999
10. Smg16Key:矩阵键盘扫描
说明:基于状态机思想的矩阵键盘扫描,8个数码管同时显示出按键值。
51Smg16Key
AVRSmg16Key
PICSmg16Key
11. Serial:串行通信
说明:上位机通过串口向单片机发数据,单片机接收后发回给上位机。
51Serial
AVRSerial
PICSerial
12. ds18b20:数字温度传感器
说明:读取DS18B20温度,显示在LCD1602液晶屏上,测温范围-55--+128,一位小数
51ds18b20
AVRds18b20
PICds18b20
13. da0832:数模转换DA
51da0832
AVRda0832
PICda0832
说明:数模转换芯片DA0832直通方式驱动一个发光二极管,由暗到亮循环
14. AD:模数转换
51ad0804
AVRad
PICad
说明:51单片机外接模数转换芯片AD0804,以及AVR、PIC片内AD使用方法,数码管显示。
15. ds1302:时钟芯片ds1302的使用
51ds1302
AVRds1302
PICds1302
说明:LCD1602液晶显示年、月、日、时、分、秒、星期
16.MultiKey:一键多功能(长按、短按)
17. 带温度测量功能的电子万年历(基于Proteus)
51带温度测量功能的电子万年历(基于Proteus)
AVR带温度测量功能的电子万年历(基于Proteus)
PICcalendar
说明:一个综合性实例,年月日时分秒星期、温度、闹钟,3个按键。 |