郭天祥的学ARM和学单片机一样简单视频教程1.08G

合集下载

郭天祥之十天学会单片机视频配套程序-实用!

郭天祥之十天学会单片机视频配套程序-实用!

郭天祥之十天学会单片机视频配套程序-实用! Lesson1作业1、用位操作点亮第一个发光管.适用TX-1C单片机实验板晶振为11.0592M/*********************************************************/ #include<reg52.h> //52单片机头文件sbit led1=P1^0; //单片机管脚位声明void main() //主函数{led1=0; //将单片机P1.0口清零while(1); //程序停止在这里,在后面会讲到为什么这样写。

}2 、用总线操作点亮第一个发光管./*********************************************************/ #include<reg52.h> //52单片机头文件void main() //主函数{P1=0xfe; //将单片机P1口的8个口由高到低分别赋值为11111110 while(1); //程序停止在这里,在后面会讲到为什么这样写。

}3、用位操作点亮最后一个发光管./*********************************************************/ #include<reg52.h> //52单片机头文件sbit led8=P1^7; //单片机管脚位声明void main() //主函数{led8=0; //将单片机P1.7口清零while(1); //程序停止在这里,在后面会讲到为什么这样写。

} 4、用总线操作点亮最后一个发光管./*********************************************************/ #include<reg52.h> //52单片机头文件void main() //主函数{P1=0x7f; //将单片机P1口的8个口由高到低分别赋值为01111111 while(1); //程序停止在这里,在后面会讲到为什么这样写。

郭天祥十天学会单片机和C语言编程课件

郭天祥十天学会单片机和C语言编程课件
展望未来的学习
了解如何继续深入学习单片机和C语言编程,并掌握更高级的技术和知识。
技术进阶
1
进一步学习单片机和C语言编程的高级知识和技巧
探索更高级的单片机和C语言编程知识,掌握更多的技巧和技术。
2
创新应用和解决实际问题的能力提升
学习如何创新应用单片机和C语言编程,以及如何解决实际问题。
总结和展望
学习成果总结和个人感悟
回顾您在这十天学习中所取得的成果,并分享您对编程的个人感悟和体会。
郭天祥十天学会单片机ቤተ መጻሕፍቲ ባይዱ C语言编程ppt课件
欢迎来到郭天祥的课程!在这十天的学习中,我们将带您领略单片机和C语言 编程的奇妙世界,掌握编程的基础知识,并通过实践案例和技术进阶,提升 您的编程技巧。
课程介绍
单片机和C语言编程的重要性
了解为什么单片机和C语言编程在现代科技中如此重要,以及掌握它们的好处。
学习目标和课程安排
明确我们在这十天学习中的目标,以及课程的安排和内容概览。
基础知识
探索单片机的基本概念和原理,以及C语言编程的基本语法和常见功能。
实践案例
通过实例学习单片机和C语言编程
通过实际案例学习如何应用单片机和C语言编程,深 入理解他们的工作原理。
实战案例演示和分析
演示一些实战案例,并深入分析案例中的编程技巧 和解决问题的方法。

单片机百度盘资料

单片机百度盘资料

一、51单片机1、祥云51单片机学习光盘(视频教程、例程、操作系统)适合初学者资料下载链接:https:///cJzLQdrBfp2KD 访问密码8f772、普中51单片机学习光盘/s/1pK0c4BL3、郭天祥----十天征服单片机/s/1i4N2Hrn4、新概念51单片机C语言教程.入门、提高、开发(500页,郭天祥著)https:///cYAYJtgFJNUup 访问密码9eb15、力天电子51单片机视频教程/s/1hrulifU6、天狼星51单片机视频教程链接:/s/1pKsD3b9 密码:scy48、STC12C5A60S2例程https:///cjPpH7uBBbIr8 访问密码a471二、AVR单片机1、郭天祥--十天学会AVR单片机视频教程https:///cwVbV5mWw9pxk 访问密码34ba1、锐志电子AVR单片机视频教程https:///cweRHU4JUSypY 访问密码64b22、手把手AVR单片机视频教程https:///cm926G3YrWKhG 访问密码dccb3、DY_miniAVR单片机光盘资料https:///c3fIFUrWu4LEG 访问密码00364、AVR代码生成器https:///c3fILqj5h3aT9 访问密码20615、AVR开发工具https:///c3fI3satMGmSh 访问密码d3566、AVR例程https:///c3fIFfSgCzhWE 访问密码48c1三、msp430单片机1、郭天祥---十天学会msp430单片机https:///cYAYvyxDBaHgr 访问密码4dca2、力天msp430单片机视频教程https:///cYAY83HwRumTn 访问密码d66c3、msp430 c语言.pdfhttps:///cYAY577Ucc7b2 访问密码86b34、msp430教程.pdfhttps:///cYAYtXwXYesgC 访问密码ccbf5、IAR C 430标准库函数.pdfhttps:///cYAYnInwURHZx 访问密码52ef四、PIC单片机1、郭天祥--十天学会pic单片机https:///cYAYDyx2Zydsi 访问密码af9b2、王伟民pic单片机教程https:///cYAYz37WLEaYZ 访问密码2312五、STM32嵌入式教程1、正点原子《手把手教你学STM32-M3》-基于正点原子战舰STM32开发板/s/1hqOsK6K2、正点原子《手把手教你学STM32-M4》-基于正点原子探索者STM32F4开发板/s/1hqOsK7q3、正点原子 UCOS/EMWIN/LWIP视频-基于正点原子STM32开发板/s/1qWsXTfu4、mini基础板视频教程光盘链接:/s/1hqVhZdq 密码:rhab5、stm32历程链接:/s/1jH0maay 密码:hcy26、众想单片机stm32视频教程链接:/s/1hrwmnRY 密码:rb887、李想stm32视频教程链接:/s/1jGZN9kE 密码:m9668、红龙stm32开发板光盘链接:/s/1i4mGYqT 密码:uc5v9、stm’32清晰教程链接:/s/1bogN6Gn 密码:p7pt10、stm32官方文件链接:/s/1c1gfzva 密码:s2gs11、stm32资料pdf资料总汇(20)篇/s/1gdTioq3/s/1eQQ2qPG/s/1i4iDiYh/s/1o7avuCq/s/1gdNIv79/s/1dDTmnRz/s/1mhyggcS12、基于嵌入式实时操作系统的程序设计技术_周航慈_北航.pdf/s/1dEmOZBz13、任哲-嵌入式实时操作系统μCOS-II原理及应用.pdf/s/1jHyjZOM14、嵌入式操作系统uCOS-II(第二版)/s/1dEkhscD15、ucos2经典讲解/s/1o7bHpbG16、邵贝贝ucos操作系统全书.pdf/s/1sklKEz717、零死角玩转stm32-系统篇(uCOS-II)/s/1mhazyQk18、ucosii学习文档集/s/1jGRadIQ六、ARM7、ARM9视频教程1、郭天祥ARM7视频教程https:///cwVbAjCw9JL95 访问密码627d2、郭天祥ARM9视频教程https:///cYARicupI5tjL 访问密码1f283、郭天祥郭天祥CPLD视频教程https:///cwVbfP2dTEeRq 访问密码f955七、CORTEX—A内核arm教程1、基于cortex-a内核的指令链接:/s/1c1qURXe 密码:zux42、国嵌学院cortex-a嵌入式视频全集(内部视频)链接:/s/1pKwEjLh 密码:mc9r3、wince6.0镜像链接:/s/1dEuq3uT 密码:14ww4、wince6.0源码链接:/s/1i4ymmdn 密码:fpb0 5、vs2005链接:/s/1boiP2Bd 密码:7spr 6、QT视频教程链接:/s/1i4fpok1 密码:o4q3 链接:/s/1c0ZtQbI 密码:fwkq 7、QT在Android下编程教程链接:/s/1geft1Z1 密码:z2gq 8、cortex-a下游戏安装集链接:/s/1o84B9WY9、天嵌210光盘资料10张(视频、源码、电路)链接:/s/1boCjt5110、andriod资料链接:/s/1i42VQSH 密码:7fbg 11、windows下资料链接:/s/1i4bRBoT 密码:nqan 12、linux操作系统资料链接:/s/1behIfc 密码:c13n 13、wince操作系统资料/s/1YHVRK14、ARM64-zip链接:/s/1sk1Z6Mx 密码:7uc3 15、QT源码包链接:/s/1boj5ptt 密码:w9bv 16、linux源码包链接:/s/1geyWgPd 密码:qz8z 17、linux开发工具链接:/s/1qXaXmB6 密码:n5ka八、其他资料1、AD6.9 PCB设计教程(15G)https:///cjGM4TkItmeCH 访问密码6e71 2、autocad视频教程https:///cHP5pRjnFbYEA 访问密码ea0d 3、C++课件https:///c3WZYx7h56wZW 访问密码62f8 4、c语言参考手册https:///cjGMTU6WgxQs8 访问密码65a2 5、protel99视频教程https:///c3FHH4rSdp8pH 访问密码1011 6、protues8视频教程https:///cwVbKL73tJtkT 访问密码068e链接:/s/1TYmHg 密码:5l5m 7、SolidWorks视频教程(初级、高级)https:///cYABpMI5Yu4a5 访问密码fc708、VC++视频教程https:///cYABNBtWUfziZ 访问密码71479、zigbee文档资料视频教程https:///cYABipqm9VmTS 访问密码737c10、zigbee-cc2530光盘资料链接:/s/1nubduNf 密码:h6n211、zigbee组网、栈协议教程链接:/s/1nubduNf 密码:h6n212、常用74芯片、电阻、电容、电感、三级管、运放等资料集https:///cYA6ghmYJRUMN 访问密码5449https:///cYA6sTMXiCpEg 访问密码86f4https:///cYA6AztRiuDHN 访问密码8129https:///cYA6fkEyFb9qS 访问密码bd7ahttps:///cYA6KVtPtzN8R 访问密码751a13、VB资料文档+视频教程https:///cYA6Jt5cHvJtJ 访问密码31a514、matlab教程文档+视频https:///cYA6Z4ZneS92Y 访问密码bc3615、瑞萨开发板光盘-电子设计大赛专用https:///cctk6idf8A7HZ 访问密码b92516、你必须知道的495个C语言问题高清PDF中文版全书https:///cYA6QyFqqhcqq 访问密码ee8a 17、电路设计技术与技巧第二版高清晰pdf中文版https:///cYA6cfvbcMtHY 访问密码fcaf 18、战舰-GSM短信模块教程资料链接:/s/1qXaXmIo 密码:e2vk 19、语音模块资料https:///cYA6LifVjRi2n 访问密码0a2920、无线通信模块资料https:///cYA63EabvaH6J 访问密码9eac 21、指纹识别模块资料https:///cYA6r3jtbJKYT 访问密码e9b0 22、顺平linux视频教程(内部)链接:/s/1nuzzQGx 密码:521t 23、jave零基础视频教程链接:/s/1boh3v6B 密码:bqux 24、大数据学习资料链接:/s/1kUtyzPH 密码:miv2 25、android手机端编程视频教程链接:/s/1skiwKOH 密码:rriv 26、陀螺仪-飞控-四旋翼-电路仿真mulitism资料链接:/s/1c1mQU8S 密码:d0e6。

总结学习51系列,stm32系列单片机的过往

总结学习51系列,stm32系列单片机的过往

总结学习51系列,stm32系列单片机的过往
作为电子专业的学生,再加上自己对电子方面有着较浓厚的热情。

便开始一段51单片机的学习之旅。

 51单片机是一种十分简单基础的单片机。

学习起来门槛不高,只要稍微有点C语言的基础就可以比较容易的上手。

实践与理论相结合是十分合理的学习方式。

 学习单片机不能光看理论,手上有一块开发板是再合适不过的了。

踏踏实实的敲代码,将代码烧录进单片机,作为一个初学者的话,当那跑马灯闪烁起来时,内心定会无比幸福。

 单片机在我所就读的学校是被安排在了大三的课程,但是由于好奇,我在大一便开始了对于单片机,对于编程的学习,到了大一下学期已经可以制作简单的单片机DIY作品。

 熟悉单片机的人都知道,要学好单片机可不是一件容易的事,倒不是因为单片机很难学,而是很难找到一本专为单片机入门者而编写的教材。

翻一下身边的单片机教材,都好像是为已经懂单片机的人而写的。

开始接触单片机的时候我是从郭天祥编着的51单片机C语音教程开始学习的。

 接下来就是要有一块合适的开发板。

开发工具和开发环境的妥当再加上一块合适的学习板,单片机之路就可以了上路了。

21ic基础知识。

郭天祥CPLD系统设计及VHDL语言的视频教程(CPLD_FPGA)

郭天祥CPLD系统设计及VHDL语言的视频教程(CPLD_FPGA)
更多 >>
相关资源
67.1MB 64.3MB 70.8MB 134.5MB 82.1MB 100.1MB 88.6MB 91MB 125.9MB 131.4MB 126.8MB 8.9MB 1.1GB
/topics/2734162/
2009/6/28
《郭天祥CPLD 系统设计及VHDL 语言的视频教程》(CPLD/FPGA)... Page 2 of 7
自从天祥电子推出40 小时的“十天学会单片机和C 语言编程”视频教程后,受到了广 大电子爱好者的好评,推出“CPLD 器件及VHDL 程序设计”的视频 教程。 这是一部针对初学可编程逻辑器件者的教程,教程全部十讲,讲座从基本的预备知识开 始讲解,非常详细的讲解了Quartus II 的基本使用,从工程的建立、文本的输入,系统的仿 真,RTL 视图查看,管脚的分配,硬件的配置等。整个过程全部用VHDL 语言讲解,从VHDL 语言库的调用,实体的描述,结构体的描 述,进程和函数的应用。一步一步的讲解设计过程中的每个语句和注意事项,同时包括编写后如何查找和修改错误。
第八讲:字符滚动显示例程,主要讲解了如何控制点阵显示字符,并且进行滚动。
第九讲:模数转换控制例程,主要讲解了如何控制ADC0804 进行电压采集并显示数据。
第十讲:正弦波发生器例程,包括了直接数字频率合成(DDS)的原理以及如何应用CPLD 产生频率可控频率的正弦信号。 通过本视频教程地学习,您就可以较快较好的掌握CPLD 器件内部结构和操作原理,以及VHDL 语言的书写规范和编写方法,如果配套我 们的CPLD 开发板一起学习,那肯定能够起到事半功倍的效果,让您不再为学习CPLD 和VHDL 语言而发愁。
3月10日 29楼 举报
[0]

郭天祥建议ARM的学习方法

郭天祥建议ARM的学习方法

首先感谢大家关注我们的《学ARM和学单片机一样简单》视频教程,我们花费半年的时间进行策划,经过两个多月时间的录制,然后经过剪辑、补充,最终在今天呈现给大家。

06年我们那会大四,当时很少有同学去研究ARM,有也只是把它当做单片机来用。

仅仅过了3年,ARM已经是一种趋势了,不管是毕业找工作,还是开发工程项目,掌握ARM是一种显而易见的优势。

在郭天祥推出《10天学会51单片机》视频教程后,受到了大家一致的认可,天祥电子再接再厉又相继推出了《10天学会AVR单片机》和《10天学会PIC单片机》,也获得了大家的广泛认可和好评,帮助大家轻松的掌握了这些单片机的使用和C语言的编程。

接着有很多朋友催促我们赶紧录制ARM的视频教程。

其实从推出第一款《10天学会51单片机》,我们就计划要推出ARM的视频教程,之所以推迟了这么久。

主要是因为ARM的视频很不好讲,如果我们只是把ARM当做一块单片机来用,那只需要有单片机的基础知识就可以了,这样的视频也很好录制。

但是我们秉承着“既然做就要做好”的宗旨,希望我们录制的ARM教程不仅仅是让大家能够把ARM当做单片机来用,而且必须要让大家学会嵌入式系统的知识,这才是ARM的精髓,而且学ARM最困难的地方也在这里。

嵌入式系统涉及的知识太多,包括BOOTLOADER编写、移植、系统外围驱动程序和应用程序的编写和移植。

不仅要求大家对驱动的芯片非常清楚,还要求大家对系统下面指令的用法和函数调用也要非常熟悉。

如果我们把这些全部在视频里讲解到,不仅时间和精力不允许,大家也会失去学习的兴趣和动力,所以我们摒弃了那些长篇大论,从实际应用出发。

在分析完程序的流程后,直奔主题,讲解最关键的程序和函数,让大家在最短的时间内编写出自己的程序。

这样才能激发出大家的成就感,和继续坚持的毅力。

当然不是所有人看完我们这个视频都能够掌握ARM嵌入式系统,必须要具备几个前提:1、必须要有很好的单片机基础,这个不用我们过多解释。

单片机资料百度盘

单片机资料百度盘

一、51单片机1、祥云51单片机学习光盘(视频教程、例程、操作系统)适合初学者资料下载链接:https:///cJzLQdrBfp2KD 访问密码8f772、普中51单片机学习光盘/s/1pK0c4BL3、郭天祥----十天征服单片机/s/1i4N2Hrn4、新概念51单片机C语言教程.入门、提高、开发(500页,郭天祥著)https:///cYAYJtgFJNUup 访问密码9eb15、力天电子51单片机视频教程/s/1hrulifU6、天狼星51单片机视频教程链接:/s/1pKsD3b9 密码:scy48、STC12C5A60S2例程https:///cjPpH7uBBbIr8 访问密码a471二、AVR单片机1、郭天祥--十天学会AVR单片机视频教程https:///cwVbV5mWw9pxk 访问密码34ba1、锐志电子AVR单片机视频教程https:///cweRHU4JUSypY 访问密码64b22、手把手AVR单片机视频教程https:///cm926G3YrWKhG 访问密码dccb3、DY_miniAVR单片机光盘资料https:///c3fIFUrWu4LEG 访问密码00364、AVR代码生成器https:///c3fILqj5h3aT9 访问密码20615、AVR开发工具https:///c3fI3satMGmSh 访问密码d3566、AVR例程https:///c3fIFfSgCzhWE 访问密码48c1三、msp430单片机1、郭天祥---十天学会msp430单片机https:///cYAYvyxDBaHgr 访问密码4dca2、力天msp430单片机视频教程https:///cYAY83HwRumTn 访问密码d66c3、msp430 c语言.pdfhttps:///cYAY577Ucc7b2 访问密码86b34、msp430教程.pdfhttps:///cYAYtXwXYesgC 访问密码ccbf5、IAR C 430标准库函数.pdfhttps:///cYAYnInwURHZx 访问密码52ef四、PIC单片机1、郭天祥--十天学会pic单片机https:///cYAYDyx2Zydsi 访问密码af9b2、王伟民pic单片机教程https:///cYAYz37WLEaYZ 访问密码2312五、STM32嵌入式教程1、正点原子《手把手教你学STM32-M3》-基于正点原子战舰STM32开发板/s/1hqOsK6K2、正点原子《手把手教你学STM32-M4》-基于正点原子探索者STM32F4开发板/s/1hqOsK7q3、正点原子 UCOS/EMWIN/LWIP视频-基于正点原子STM32开发板/s/1qWsXTfu4、mini基础板视频教程光盘链接:/s/1hqVhZdq 密码:rhab5、stm32历程链接:/s/1jH0maay 密码:hcy26、众想单片机stm32视频教程链接:/s/1hrwmnRY 密码:rb887、李想stm32视频教程链接:/s/1jGZN9kE 密码:m9668、红龙stm32开发板光盘链接:/s/1i4mGYqT 密码:uc5v9、stm’32清晰教程链接:/s/1bogN6Gn 密码:p7pt10、stm32官方文件链接:/s/1c1gfzva 密码:s2gs11、stm32资料pdf资料总汇(20)篇/s/1gdTioq3/s/1eQQ2qPG/s/1i4iDiYh/s/1o7avuCq/s/1gdNIv79/s/1dDTmnRz/s/1mhyggcS12、基于嵌入式实时操作系统的程序设计技术_周航慈_北航.pdf/s/1dEmOZBz13、任哲-嵌入式实时操作系统μCOS-II原理及应用.pdf/s/1jHyjZOM14、嵌入式操作系统uCOS-II(第二版)/s/1dEkhscD15、ucos2经典讲解/s/1o7bHpbG16、邵贝贝ucos操作系统全书.pdf/s/1sklKEz717、零死角玩转stm32-系统篇(uCOS-II)/s/1mhazyQk18、ucosii学习文档集/s/1jGRadIQ六、ARM7、ARM9视频教程1、郭天祥ARM7视频教程https:///cwVbAjCw9JL95 访问密码627d2、郭天祥ARM9视频教程https:///cYARicupI5tjL 访问密码1f283、郭天祥郭天祥CPLD视频教程https:///cwVbfP2dTEeRq 访问密码f955七、CORTEX—A内核arm教程1、基于cortex-a内核的指令链接:/s/1c1qURXe 密码:zux42、国嵌学院cortex-a嵌入式视频全集(内部视频)链接:/s/1pKwEjLh 密码:mc9r3、wince6.0镜像链接:/s/1dEuq3uT 密码:14ww4、wince6.0源码链接:/s/1i4ymmdn 密码:fpb0 5、vs2005链接:/s/1boiP2Bd 密码:7spr 6、QT视频教程链接:/s/1i4fpok1 密码:o4q3 链接:/s/1c0ZtQbI 密码:fwkq 7、QT在Android下编程教程链接:/s/1geft1Z1 密码:z2gq 8、cortex-a下游戏安装集链接:/s/1o84B9WY9、天嵌210光盘资料10张(视频、源码、电路)链接:/s/1boCjt5110、andriod资料链接:/s/1i42VQSH 密码:7fbg 11、windows下资料链接:/s/1i4bRBoT 密码:nqan 12、linux操作系统资料链接:/s/1behIfc 密码:c13n 13、wince操作系统资料/s/1YHVRK14、ARM64-zip链接:/s/1sk1Z6Mx 密码:7uc3 15、QT源码包链接:/s/1boj5ptt 密码:w9bv 16、linux源码包链接:/s/1geyWgPd 密码:qz8z 17、linux开发工具链接:/s/1qXaXmB6 密码:n5ka八、其他资料1、AD6.9 PCB设计教程(15G)https:///cjGM4TkItmeCH 访问密码6e71 2、autocad视频教程https:///cHP5pRjnFbYEA 访问密码ea0d 3、C++课件https:///c3WZYx7h56wZW 访问密码62f8 4、c语言参考手册https:///cjGMTU6WgxQs8 访问密码65a2 5、protel99视频教程https:///c3FHH4rSdp8pH 访问密码1011 6、protues8视频教程https:///cwVbKL73tJtkT 访问密码068e链接:/s/1TYmHg 密码:5l5m 7、SolidWorks视频教程(初级、高级)https:///cYABpMI5Yu4a5 访问密码fc708、VC++视频教程https:///cYABNBtWUfziZ 访问密码71479、zigbee文档资料视频教程https:///cYABipqm9VmTS 访问密码737c10、zigbee-cc2530光盘资料链接:/s/1nubduNf 密码:h6n211、zigbee组网、栈协议教程链接:/s/1nubduNf 密码:h6n212、常用74芯片、电阻、电容、电感、三级管、运放等资料集https:///cYA6ghmYJRUMN 访问密码5449https:///cYA6sTMXiCpEg 访问密码86f4https:///cYA6AztRiuDHN 访问密码8129https:///cYA6fkEyFb9qS 访问密码bd7ahttps:///cYA6KVtPtzN8R 访问密码751a13、VB资料文档+视频教程https:///cYA6Jt5cHvJtJ 访问密码31a514、matlab教程文档+视频https:///cYA6Z4ZneS92Y 访问密码bc3615、瑞萨开发板光盘-电子设计大赛专用https:///cctk6idf8A7HZ 访问密码b92516、你必须知道的495个C语言问题高清PDF中文版全书https:///cYA6QyFqqhcqq 访问密码ee8a 17、电路设计技术与技巧第二版高清晰pdf中文版https:///cYA6cfvbcMtHY 访问密码fcaf 18、战舰-GSM短信模块教程资料链接:/s/1qXaXmIo 密码:e2vk 19、语音模块资料https:///cYA6LifVjRi2n 访问密码0a2920、无线通信模块资料https:///cYA63EabvaH6J 访问密码9eac 21、指纹识别模块资料https:///cYA6r3jtbJKYT 访问密码e9b0 22、顺平linux视频教程(内部)链接:/s/1nuzzQGx 密码:521t 23、jave零基础视频教程链接:/s/1boh3v6B 密码:bqux 24、大数据学习资料链接:/s/1kUtyzPH 密码:miv2 25、android手机端编程视频教程链接:/s/1skiwKOH 密码:rriv 26、陀螺仪-飞控-四旋翼-电路仿真mulitism资料链接:/s/1c1mQU8S 密码:d0e6。

单片机天才郭天祥的大学经历

单片机天才郭天祥的大学经历

致阅读本书的大学生朋友在哈尔滨工程大学六年,我在学校电子创新实验室呆了四年,这四年里创新实验室给我提供了良好的学习环境和完善的实验设备;在与众多电子爱好者的交流中,使我学到了更多的专业知识;在学校老师们的教导下,让我学会了如何做一名合格的大学生。

因此,在这里我要感谢哈尔滨工程大学的历任领导,我今天成绩的取得得益于他们不断完善的教育体制;衷心地感谢曾经教导过我的刁鸣教授、付永庆教授、王松武教授,没有他们对我的培养,也就没有我的今天。

同时我也希望能有更多的电子爱好者加入创新实验室,在完善自我的同时,在电子行业做出更突出的业绩。

2007年,我以全新的教学方式推出了一套讲述51单片机的教学视频课程——“十天学会单片机”,该视频自从网上发布后,得到了电子爱好者的一致好评,诸多的单片机初学者通过这套视频走上了单片机开发之路。

有很多学员来信或打电话希望我能够将视频中的内容著书出版,让更多的人受益。

为此,从2007年9月至2008年7月,我用了近十个月的时间将本书写完。

本书的写作风格与我在教学视频中的讲课风格相似,它与传统讲授单片机的书籍完全不同,我以学单片机“过来人”的思路,抱着如何才能更容易掌握单片机的态度,理论与实践完全结合的方式清晰地讲解了单片机部分。

其余大部分内容为我多年做项目的经验积累,也有部分内容来自于网络电子高手们的精华总结,应当说,在本书中有太多的知识是大家平时在书本上学不到的。

在这里,先将我在大学期间的学习和生活经历与大家分享,借此鼓舞大家珍惜大学时光,多学习文化知识,开创更加美好的明天。

我的大学写这篇文章的时候,我正处于硕士研究生毕业论文的准备阶段,眼睁睁看着我的大学生活即将画上句号,再看看身边有很多低年级的学生们一天天把时间白白荒费掉,我在心里替他们惋惜,在即将结束我的大学生活之际,我将我的大学几年的有意义的生活与大家分享,看过这篇文章后也许能让那些有梦想的同学为了实现自己的人生目标少走些弯路,大家要相信,大学校园——将为你提供一生最好的学习环境。

Altiumdesignersummer08学习笔记

Altiumdesignersummer08学习笔记

Altiumdesignersummer08学习笔记本人来自于重庆邮电大学,花了一个月时间学习altiumdesigner,学习过程中做了些简单的操作笔记,笔记是根据郭天祥的讲课视频来记录的,希望能对大家有所帮助,如果有什么想和我交流,可以加我的QQ:375240364开始启动ALTIUM DESIGNER时,其实运行的是DXP。

EXE文件,pcb画图要测量元件的大小,按ctrl+g能设置两个点之间的距离,选中弹出来工俱第二个图标为焊盘,画点,尺子测量ctrl+m,SHIFT+M是打开或取消放大镜功能,放大某一个部分画电路元件:1。

place下选要画的元件的形状,2,tool下选择PIN要添加的引脚,按TAB键可以修改引脚属性,(内部标号和外部号),确定后可按空格键翻转两个标号,3,按住CTRL键滚轮可以放大或缩小,4,在做原理图时,每个字母后面加上"\",就会显示上划线,这一条只适用于在画原理图库时,在原理图中添加元器件时修改其名字时是行不通的。

5,元件之间能自动连接,不过连接时的线是很短的,如何加长?按左键选中元件,然后按住CTRL键拖动元件。

6,添加封装,双击元件,再点击右下脚ADD,选择FOOTPRINT,7,2.54mm,在PCB中非常重要,即是100mil,单片机中大部分都是这样的距离,8。

画PCB封装图,元件都齐,再测量9,画PCB时设置两个引脚之间的距离:点工具栏#字网状图形,选set snap..默认的是mil单位,按Q后会转换成MM为单位,点焊盘画圆圈,按TAB键打开属性,designator中要填写与对应引脚相同的序号,画完后最好加一个框架。

加框要加在TOP OVERLAY层,用LINE画线工具画线,可以通过设置间距,使方框细一些,10.VSS是代表要接地的意思11,画好原理图后,选PROJECT下的compile编译,然后点designer下生成PCB图,然后点工具栏上的放大镜会弹出PCB图来,designer下bord shap下选redfine board shap来确定黑色格子的大小,最好和PCB图宽度相当12,画好一个PCB封装库时要设置一个参考点,以免到时移动时找不到元件,在封装库文件下点EDIT找到set reference,如果是在生成PCB之后才设置参考点,那么这时要重新导入封装,或是把库升级(找到工程里文件点右键升级),如果还是找不着位置,可以重置其坐标,找一个与它相差不远的元件的坐标,以它为参考设置。

郭天祥十天学会单片机PPT课件

郭天祥十天学会单片机PPT课件
2利用定时计数器t1产生定时时钟由p1口控制8个发光二极管使8个指示灯依次一个一个闪动闪动频率为10次秒8个灯依次亮一遍为一个周期循3同时用两个定时器控制蜂鸣器发声定时器0控制频率定时器1控制同个频率持续的时间间隔300ms依次输出110501002004008001khz的方波
十天学会单片机 完整版
五个中断源的中断控制系统; 一个全双工UART(通用异步接收发送器) 的串行I/O口,用于实现单片机之间或单片机 与微机之间的串行通信; 片内振荡器和时钟产生电路,石英晶体和微 调电容需要外接。最高振荡频率取决于单片 机型号及性能。
C51知识
C语言是一种编译型程序设计语言,它兼顾 了多种高级语言的特点,并具备汇编语言的 功能。目前,使用C语言进行程序设计已经 成为软件开发的一个主流。用C语言开发系 统可以大大缩短开发周期,明显增强程序的 可读性,便于改进、扩充和移植。而针对 8051的C语言日趋成熟,成为了专业化的实 用高级语言。
非总线型
RST P3.0/RXD P3.1/TXD XTAL2 XTAL1 P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 GND 1 2 3 4 5 6 7 8 9 10 20 19 18 17 16 15 14 13 12 11 VCC P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1/AIN1 P1.0/AIN0 P3.7
C-51数据的存储类型
例:
数据类型 变量名
char var1; bit flags; unsigned char vextor[10]; int wwww; 注意:变量名不能用C语言中的关 键字表示。
◆单板机 将CPU芯片、存储器芯片、I/O接口芯片和 简单的I/O设备(小键盘、LED显示器)等装 配在一块印刷电路板上,再配上监控程序(固 化在ROM中),就构成了一台单板微型计算 机(简称单板机)。

单片机学习经验6篇.doc

单片机学习经验6篇.doc

单片机学习心得6篇单片机学习心得范文1:我从大二起,就去实验室去学习。

在这里与老师和一些电子设计爱好者的交流中,我学到了更多的专业知识。

我从此走上了学习嵌入式的道路。

这丰富了我的大学生活,是我在大学的最大收获。

我是从学习单片机开始我的嵌入式学习的。

我接触单片机的方式是在图书馆看书,我看了很多本书,但是大多数书写的大同小异。

书里面讲解的单片机的寄存器我看了很多遍也没有看懂。

我都不知道改怎么学习它了。

慢慢的我悟出了一个道理:电子的学习实践是最重要的,这样,我在大二的时候就买了一块学习板,我一边看视频一边仿照视频的程序,自己编写程序,在很短的时间里,我的单片机有了很大的提高。

那些难懂的寄存器通过编写程序,我慢慢的弄懂了它们,现在回头看去,原来它还是很简单的。

用哪种编程语言最适合我们。

我看过的单片机的书籍,大部分的程序都是汇编写的。

它是一种基于机器硬件的低级语言,对于我们这些只学习过C语言的人来说,非常难懂。

我认为刚开始学习单片机没有必要一定要从学习汇编编程开始。

我学习单片机就是用C语言编程的,我并不会汇编语言,也没有妨碍我把单片机学好。

很多人说,学单片机最好先学汇编语言,以我的经验告诉大家,绝对没有这个必要,初学者一开始就直接用C语言为单片机编程,既省时间,学起来又容易,进步速度会很快。

在刚开始学单片机的时候,千万不要为了解单片机内部结构而浪费时间,这样只能打击你的信心,当你学会编程后,自然一步步就掌握其内部结构了。

单片机的学习实践。

单片机提高重在实践,想要学好单片机,软件编程必不可少。

但是熟悉硬件对于学好单片机的也是非常重要的。

如何学习好硬件,动手实践是必不可少的。

我们可以通过自己动手做一个自己的电子制作,通过完成它,以提高我的对一些芯片的了解和熟练运用它。

这样我们就可以多一些了解芯片的结构。

我相信,你完成了一个属于自己的电子制作,你的单片机水平就会有一个质的提高。

这就是我学习单片机的心得体会,希望给单片机的爱好者学好单片机有所帮助。

2013年全国大学生电子设计竞赛(C题)

2013年全国大学生电子设计竞赛(C题)

2013年全国大学生电子设计竞赛简易旋转倒立摆及控制装置(C题)2013年9月7日摘要旋转倒立摆是一个非线性、强耦合、多变量和自然不稳定系统。

通过它能有效地反映控制过程中诸如镇定性、鲁棒性、随动性以及跟踪等多种关键问题,是检验各种控制理论的理想模型。

对倒立摆的研究不仅具有深远的理论意义,而且在航天科技和机器人学领域中也有现实指导性意义。

本作品是基于STC89C52单片机作为核心控制器,以L298N作为驱动电路芯片,利用直流电机PWM调速原理,控制旋转臂的转速,从而控制摆杆的频率和振幅,当二者共振时就实现了摆杆在某一固定角度往复运动,能够实现倒立摆的基本功能。

利用加速度传感器获取摆杆的状态,实现摆杆在固定角度摆动,最终实现在竖直方向倒立,即小范围内摆动而不倒下。

关键词:旋转倒立摆,STC89C52,PWM调速,共振目录1系统方案------------------------------------------------ 1 1.1 设计要求 ------------------------------------------1 1.1.1 任务----------------------------------------1 1.1.2 要求----------------------------------------2 1.1.3 说明----------------------------------------2 1.2 总体设计方案---------------------------------------3 1.2.1 设计思路-------------------------------------3 1.2.2 方案论证与比较-------------------------------5 2单元硬件电路设计-----------------------------------------6 2.1 单片机控制系统设计---------------------------------7 2.1.1 STC89C52最小系统-----------------------------6 2.1.2 AD采集模块电路设计---------------------------6 2.1.3 显示模块电路设计-----------------------------7 2.2 加速度传感器的应用---------------------------------7 2.2.1 MMA7361L原理及应用---------------------------7 2.3 电机驱动模块---------------------------------------7 2.3.1 L298N驱动电路设计----------------------------8 3程序结构与设计-------------------------------------------8 3.1 程序流程图-----------------------------------------9 3.1.1 主程序流程图及算法分析-----------------------9 3.1.2 显示程序设计--------------------------------10 4系统测试------------------------------------------------11 4.1 实验摆角测试-------------------------------------114.2 实验结果分析-----------------------------------11 5参考文献----------------------------------------------12 附录1 总程序附录2 电路原理图简易旋转倒立摆及控制装置(C题)【XX组】1系统方案本系统主要由电机驱动模块、显示模块、加速度传感器模块,下面详细介绍各模块的选择与特点。

51单片机实验心得体会5篇

51单片机实验心得体会5篇

51单片机实验心得体会5篇(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。

文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如述职报告、演讲发言、汇报材料、对照材料、心得体会、策划方案、规章制度、教学资料、作文大全、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample essays for everyone, such as job reports, speeches, presentation materials, reference materials, insights, planning plans, rules and regulations, teaching materials, complete essays, and other sample essays. If you want to learn about different sample formats and writing methods, please pay attention!51单片机实验心得体会5篇心得体会是内在世界的翻译,将情感的语言变为思考的文字,重视体会的写作,我们才能让自己的观点影响更多人,本店铺今天就为您带来了51单片机实验心得体会5篇,相信一定会对你有所帮助。

基于郭天祥的十天学通单片机,其讲课中涉及到的源程序

基于郭天祥的十天学通单片机,其讲课中涉及到的源程序

以下程序基于郭天祥的十天学通单片机TX-1C单片机实验板,是其讲课中涉及到的源程序Lesson11#include<reg52.h>sbit D2=P1^2;unsigned int a;void main(){D2=0;/* for(a=0;a<=10000;a++){};D2=1;for(a=0;a<=10000;a++){};*/}2#include<reg52.h>void main(){P1=0xfd;}lesson21#include<reg52.h>sbit p1_1=P1^0unsigned int avoid main(){while(1){a=51000;p1_1=0;while(a--);a=51000;while(a--);p1_1=1;a=51000;while(a--);a=51000;while(a--);}}2#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbit D1=P1^0;//void delay();void delay(uint);void main(){ while(1){D1=0;delay(100);D1=1;delay(100);}}/*void delay(){uint x,y;for(x=100;x>0;x--)for(y=600;y>0;y--);}*/void delay(uint z){uint x;uchar y;for(x=z;x>0;x--)for(y=20;y>0;y--);}lesson31#include<reg52.h>sbit dula=P2^6;sbit wela=P2^7;void main(){wela=1;P0=0xc0;wela=0;dula=1;P0=0x06;dula=0;while(1);}2 #include<reg52.h>#define uint unsigned int#define uchar unsigned char sbit dula=P2^6;sbit wela=P2^7;uchar num;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; void delay(uint z);void main(){wela=1;//11101010P0=0xea;wela=0;while(1){for(num=0;num<16;num++) {dula=1;P0=table[num];dula=0;delay(1000);}}}void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}3#include<reg52.h>#define uint unsigned int#define uchar unsigned char sbit dula=P2^6;sbit wela=P2^7;sbit d1=P1^0;uchar num;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; void delay(uint z);void main(){EA=1;//开总中断EX0=1;//开外部中断0//IT0=1;TCON=0x01;wela=1;//11101010P0=0xea;wela=0;while(1){for(num=0;num<16;num++) {d1=1;dula=1;P0=table[num];dula=0;delay(1000);} }}void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void exter0() interrupt 0{d1=0;}4#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbit dula=P2^6;sbit wela=P2^7;sbit d1=P1^0;uchar num,num1;tt;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};void delay(uint z);void main(){num=0;tt=0;TMOD=0x11;//设置定时器0为工作方式1TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=(65536-20000)/256;TL1=(65536-20000)%256;// EA=1;//开总中断ET0=1;//开定时器0中断ET1=1;TR0=1;//启动定时器0TR1=1;wela=1;//11101010P0=0xea;wela=0;dula=1;P0=0x3f;dula=0;while(1){if(num1==25){num1=0;P1=~P1;}if(tt==100){tt=0;num++;if(num==16)num=0;dula=1;P0=table[num];dula=0;}}}void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void time0() interrupt 1 {TH0=(65536-10000)/256; TL0=(65536-10000)%256; tt++;}void time1() interrupt 3 {TH1=(65536-20000)/256; TL1=(65536-20000)%256; num1++;}Lesson41.#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned char uchar temp,aa,num;sbit dula=P2^6;sbit wela=P2^7;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; void delay(uint z);void main(){num=0;aa=0;TMOD=0x01;TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1;ET0=1;TR0=1;temp=0xfe;P1=temp;dula=1;P0=table[0];dula=0;wela=1;P0=0xc0;wela=0;while(1){delay(1000);temp=_crol_(temp,1);P1=temp;/* if(aa==40){aa=0;num++;if(num==16)num=0;dula=1;P0=table[num];dula=0;} */}}void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void timer0() interrupt 1 {TH0=(65536-50000)/256; TL0=(65536-50000)%256; aa++;if(aa==40){aa=0;num++;if(num==16)num=0;dula=1;P0=table[num];dula=0;}}Lesson4-2#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned char uchar temp,aa,numdu,numwe; sbit dula=P2^6;sbit wela=P2^7;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};uchar code tablewe[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf}; //void delay(uint z);void main(){numdu=0;numwe=0;aa=0;TMOD=0x01;TH0=(65536-5000)/256;TL0=(65536-5000)%256;EA=1;ET0=1;TR0=1;while(1){// delay(1000);// temp=_crol_(temp,1);// P1=temp;if(aa==1){aa=0;numdu++;if(numdu==7)numdu=1;dula=1;P0=table[numdu];dula=0;wela=1;P0=tablewe[numwe];wela=0;numwe++;if(numwe==6)numwe=0;}}}/*void delay(uint z){uint x,y; for(x=z;x>0;x--)for(y=110;y>0;y--);}*/void timer0() interrupt 1{TH0=(65536-5000)/256;TL0=(65536-5000)%256;aa++;}Lesson4-3#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar temp,aa,bai,shi,ge;sbit dula=P2^6;sbit wela=P2^7;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};void display(uchar bai,uchar shi,uchar ge);void delay(uint z);void init();void main(){init();//初始化子程序while(1){if(aa==20){aa=0;temp++;if(temp==100){temp=0;}bai=temp/100;shi=temp%100/10;ge=temp%10;}display(bai,shi,ge);}}void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void display(uchar bai,ucharshi,uchar ge){dula=1;P0=table[bai];dula=0;P0=0xff;wela=1;P0=0xfe;wela=0;delay(1);dula=1;P0=table[shi];dula=0;P0=0xff;wela=1;P0=0xfd;wela=0;delay(1);dula=1;P0=table[ge];dula=0;P0=0xff;wela=1;P0=0xfb;wela=0;delay(1);}void init(){wela=0;dula=0;temp=0;TMOD=0x01;TH0=(65536-50000)/256; TL0=(65536-50000)%256; EA=1;ET0=1;TR0=1;}void timer0() interrupt 1 {TH0=(65536-50000)/256; TL0=(65536-50000)%256; aa++;}Lesson51#include <reg52.h>#include <intrins.h>#define uchar unsigned char #define uint unsigned int sbit dula=P2^6;sbit wela=P2^7;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x76,0x79,0x38,0x3f,0};uchar temp,t0,t1,bai,shi,ge,flag,flag1; uint shu;void init();voiddisplay(uchar,uchar,uchar,uchar,ucha r,uchar);void delay(uint z){uint t1,y;for(t1=z;t1>0;t1--)for(y=110;y>0;y--);}void main(){init();while(1){if(flag1!=1)display(7,6,5,bai,shi,ge);elsedisplay(16,17,18,18,19,20);}}void init(){shu=432;temp=0xfe;P1=temp;TMOD=0x11;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TH1=(65536-50000)/256;TL1=(65536-50000)%256;EA=1;ET0=1;ET1=1;TR0=1;TR1=1;}void timer0() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;t0++;if(flag!=1){if(t0==10){t0=1;temp=_crol_(temp,1);P1=temp;}}else{if(t0%4==0)P1=~P1;if(t0==60){TR0=0;P1=0xff;flag1=1;}}}void timer1() interrupt 3{TH1=(65536-50000)/256;TL1=(65536-50000)%256;t1++;if(t1==2){t1=0;shu--;bai=shu/100;shi=shu%100/10;ge=shu%10;if(shu==398){TR0=0;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TR0=1;flag=1;t0=0;P1=0xff;TR1=0;}}}void display(uchar aa,uchar bb,uchar cc,uchar ba,uchar sh,uchar g){dula=1;P0=table[aa];dula=0; P0=0xff;wela=1;P0=0xfe;wela=0;delay(1);dula=1;P0=table[bb];dula=0;P0=0xff;wela=1;P0=0xfd;wela=0;delay(1);dula=1;P0=table[cc];dula=0;P0=0xff;wela=1;P0=0xfb;wela=0;delay(1);dula=1;P0=table[ba];dula=0;P0=0xff;wela=1;P0=0xf7;wela=0;delay(1);dula=1;P0=table[sh];dula=0;P0=0xff;wela=1;P0=0xef;wela=0;delay(1);dula=1;P0=table[g];dula=0;P0=0xff;wela=1;P0=0xdf;wela=0;delay(1);}Lesson5-2#include<reg52.h>#define uint unsigned int#define uchar unsigned char sbit d1=P1^0;sbit dula=P2^6;sbit wela=P2^7;sbit key1=P3^4;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; uchar num;void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void main(){wela=1;P0=0xfe;wela=0;P3=0xff;while(1){if(key1==0){delay(5);if(key1==0){d1=0;num++;if(num==10)num=0;}while(!key1);delay(5);while(!key1);}elsed1=1;dula=1;P0=table[num];dula=0;}}Lesson5-3#include<reg52.h>#define uint unsigned int#define uchar unsigned char sbit dula=P2^6;sbit wela=P2^7;sbit key1=P3^4;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0}; uchar num,temp,num1; void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}uchar keyscan();void display(uchar aa); void main(){num=17;dula=1;P0=0;dula=0;wela=1;P0=0xc0;wela=0;while(1){display(keyscan());}}void display(uchar aa) {dula=1;P0=table[aa-1];dula=0;}uchar keyscan(){P3=0xfe;temp=P3;temp=temp&0xf0; while(temp!=0xf0){delay(5);temp=P3;temp=temp&0xf0; while(temp!=0xf0){temp=P3;switch(temp){Case 0xee:num=1; break;case 0xde:num=2; break;case 0xbe:num=3; break;case 0x7e:num=4;break;}while(temp!=0xf0) {temp=P3;temp=temp&0xf0; }}}P3=0xfd;temp=P3;temp=temp&0xf0; while(temp!=0xf0) {delay(5);temp=P3;temp=temp&0xf0; while(temp!=0xf0) {temp=P3;switch(temp){case 0xed:num=5; break;case 0xdd:num=6; break;case 0xbd:num=7; break;case 0x7d:num=8; break;}while(temp!=0xf0) {temp=P3;temp=temp&0xf0; }}}P3=0xfb;temp=P3;temp=temp&0xf0; while(temp!=0xf0) {delay(5);temp=P3;temp=temp&0xf0; while(temp!=0xf0) {temp=P3;switch(temp){case 0xeb:num=9; break;case 0xdb:num=10; break;case 0xbb:num=11; break;case 0x7b:num=12; break;}while(temp!=0xf0) {temp=P3;temp=temp&0xf0; }}}P3=0xf7;temp=P3;temp=temp&0xf0; while(temp!=0xf0) {delay(5);temp=P3;temp=temp&0xf0; while(temp!=0xf0) {temp=P3;switch(temp){case 0xe7:num=13; break;case 0xd7:num=14; break;case 0xb7:num=15; break;case 0x77:num=16; break;}while(temp!=0xf0) {temp=P3;temp=temp&0xf0; }}}return num;}Lesson61#include<reg52.h> sbit csda=P3^2; sbit wr=P3^6;void main(){csda=0;wr=0;P0=0;while(1);}Lesson6-2#include<reg52.h>#define uchar unsigned char#define uint unsigned intsbit wr=P3^6;sbit rd=P3^7;void delay(uint z){uint t1,y;for(t1=z;t1>0;t1--)for(y=110;y>0;y--);}void init();void start();void main(){init();while(1){start();delay(20);rd=0;delay(10);rd=1;delay(10);}}void init(){P0=0;}void start(){wr=1;wr=0;wr=1;}Lesson7#include<reg52.h>unsigned char flag,a;void main(){TMOD=0x20;//设置定时器1为工作方式2TH1=0xfd; TL1=0xfd;TR1=1;REN=1;SM0=0;SM1=1;EA=1;ES=1;while(1){/* if(RI==1){RI=0;P1=SBUF;}*/if(flag==1){ES=0;flag=0;SBUF='1';//28;while(!TI);TI=0;SBUF='2';//28;while(!TI);TI=0;SBUF='3';//28;while(!TI);TI=0;ES=1;}}}void ser() interrupt 4{RI=0;// P1=SBUF;a=SBUF;flag=1;}Lesson8#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchar code table[]="I LIKE MCU!"; uchar code table1[]=""; sbit lcden=P3^4;sbit lcdrs=P3^5;sbit dula=P2^6;sbit wela=P2^7;uchar num;void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void write_com(uchar com) {lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;}void write_data(uchar date) {lcdrs=1;P0=date;delay(5);lcden=1;delay(5);lcden=0;}void init(){dula=0;wela=0;lcden=0;write_com(0x38);write_com(0x0e);write_com(0x06);write_com(0x01);write_com(0x80+0x10);}void main(){init();for(num=0;num<11;num++) {write_data(table[num]); delay(20);}// write_com(1);write_com(0x80+0x53);for(num=0;num<13;num++) {write_data(table1[num]); delay(20);}for(num=0;num<16;num++) {write_com(0x18);delay(20); }while(1);}Lesson9#include<reg52.h>#define uchar unsigned char sbit sda=P2^0;sbit scl=P2^1;uchar a;void delay(){ ;; }void start() //开始信号{sda=1;delay();scl=1;delay();sda=0;delay();}void stop() //停止{sda=0;delay();scl=1;delay();sda=1;delay();}void respons() //应答{uchar i;scl=1;delay();while((sda==1)&&(i<250))i++; scl=0;delay();}void init(){sda=1;delay();scl=1;delay();}void write_byte(uchar date) {uchar i,temp;temp=date;for(i=0;i<8;i++){temp=temp<<1;scl=0;delay();sda=CY;delay();scl=1;delay();// scl=0;// delay();}scl=0;delay();sda=1;delay();}uchar read_byte(){uchar i,k;scl=0;delay();sda=1;delay();for(i=0;i<8;i++){scl=1;delay();k=(k<<1)|sda;scl=0;delay();}return k;}void delay1(uchar x){uchar a,b;for(a=x;a>0;a--)for(b=100;b>0;b--);}void write_add(uchar address,uchar date){start();write_byte(0xa0);respons();write_byte(address);respons();write_byte(date);respons();stop();}uchar read_add(uchar address){uchar date; start();write_byte(0xa0);respons();write_byte(address);respons();start();write_byte(0xa1);respons();date=read_byte();stop();return date;}void main(){init();write_add(23,0xaa);delay1(100);P1=read_add(23);while(1);}Lesson10#include<reg52.h>#define uchar unsigned char#define uint unsigned intsbit dula=P2^6;sbit wela=P2^7;sbit rs=P3^5;sbit lcden=P3^4;sbit s1=P3^0;sbit s2=P3^1;sbit s3=P3^2;sbit rd=P3^7;uchar count,s1num;char miao,shi,fen;uchar code table[]=" 2007-7-30 MON";uchar code table1[]=" 00:00:00"; void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void write_com(uchar com){rs=0;lcden=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;}void write_date(uchar date){rs=1;lcden=0;P0=date;delay(5);lcden=1;delay(5);lcden=0;}void init(){uchar num;dula=0;wela=0;lcden=0;// fen=59;// miao=53;// shi=23;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);for(num=0;num<15;num++){write_date(table[num]);delay(5);}write_com(0x80+0x40);for(num=0;num<12;num++){write_date(table1[num]);delay(5);}TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1;}void write_sfm(uchar add,uchar date){uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80+0x40+add);write_date(0x30+shi);write_date(0x30+ge); }void keyscan(){rd=0;if(s1==0){delay(5);if(s1==0){ s1num++;while(!s1);if(s1num==1){TR0=0;write_com(0x80+0x40+10); write_com(0x0f);}}if(s1num==2){write_com(0x80+0x40+7); }if(s1num==3){write_com(0x80+0x40+4); }if(s1num==4){s1num=0;write_com(0x0c);TR0=1;}}if(s1num!=0){if(s2==0){delay(5);if(s2==0){while(!s2);if(s1num==1){miao++;if(miao==60)miao=0;write_sfm(10,miao);write_com(0x80+0x40+10); }if(s1num==2){fen++;if(fen==60)fen=0;write_sfm(7,fen);write_com(0x80+0x40+7); }if(s1num==3){shi++;if(shi==24)shi=0;write_sfm(4,shi);write_com(0x80+0x40+4); }}}if(s3==0){delay(5);if(s3==0){while(!s3);if(s1num==1){/* if(miao==0){miao=59;write_sfm(10,miao);write_com(0x80+0x40+10); }*/miao--;if(miao==-1)miao=59;write_sfm(10,miao);write_com(0x80+0x40+10); }if(s1num==2){fen--;if(fen==-1)fen=59;write_sfm(7,fen);write_com(0x80+0x40+7); }if(s1num==3){shi--;if(shi==-1)shi=23;write_sfm(4,shi);write_com(0x80+0x40+4); }}}} }void main(){init();while(1){keyscan();}// while(1);}void timer0() interrupt 1 {TH0=(65536-50000)/256; TL0=(65536-50000)%256; count++;if(count==18){count=0;miao++;if(miao==60){miao=0;fen++;if(fen==60){fen=0;shi++;if(shi==24){shi=0;}write_sfm(4,shi);}write_sfm(7,fen);}write_sfm(10,miao);}}Lesson11---shizhong.c#include<reg52.h>#include<define.h>void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void didi(){beep=0;delay(50);beep=1;delay(100);beep=0;delay(50);beep=1;}void write_com(uchar com) {rs=0;lcden=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;}void write_date(uchar date) {rs=1;lcden=0;P0=date;delay(5);lcden=1;delay(5);lcden=0;}void init(){uchar num;EA=1;EX0=1;IT0=1;dula=0;wela=0;lcden=0;// set_time();set_alarm(14,13,10);write_ds(0x0B,0x26);read_ds(0x0c);// fen=59;// miao=53;// shi=23;write_com(0x38);write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);for(num=0;num<15;num++) {write_date(table[num]); delay(5);}write_com(0x80+0x40); for(num=0;num<12;num++){write_date(table1[num]);delay(5);}}void write_sfm(uchar add,uchar date){uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80+0x40+add);write_date(0x30+shi);write_date(0x30+ge);}void keyscan(){rd=0;if(flag1==1){if(s2==0){delay(5);if(s2==0){while(!s2);flag1=0;}}if(s3==0){delay(5);if(s3==0){while(!s3);flag1=0;}}}if(s1==0){delay(5);if(s1==0){ s1num++;flag=1;flag1=0;while(!s1);if(s1num==1){TR0=0;write_com(0x80+0x40+10);write_com(0x0f);}}if(s1num==2){write_com(0x80+0x40+7); }if(s1num==3){write_com(0x80+0x40+4); }if(s1num==4){s1num=0;write_com(0x0c);flag=0;write_ds(0,miao);write_ds(2,fen);write_ds(4,shi);}}if(s1num!=0){if(s2==0){delay(1);if(s2==0){while(!s2);if(s1num==1){miao++;if(miao==60)miao=0;write_sfm(10,miao);write_com(0x80+0x40+10); }if(s1num==2){fen++;if(fen==60)fen=0;write_sfm(7,fen);write_com(0x80+0x40+7); }if(s1num==3){shi++;if(shi==24)shi=0;write_sfm(4,shi);write_com(0x80+0x40+4); }} }if(s3==0){delay(1);if(s3==0){while(!s3);if(s1num==1){/* if(miao==0){miao=59;write_sfm(10,miao);write_com(0x80+0x40+10);}*/miao--;if(miao==-1)miao=59;write_sfm(10,miao);write_com(0x80+0x40+10);}if(s1num==2){fen--;if(fen==-1)fen=59;write_sfm(7,fen);write_com(0x80+0x40+7);}if(s1num==3){shi--;if(shi==-1)shi=23;write_sfm(4,shi);write_com(0x80+0x40+4);}}}}}void write_ds(uchar add,uchar date) {dscs=0;dsas=1;dsds=1;dsrw=1;P0=add;dsas=0;dsrw=0;P0=date;dsrw=1;dsas=1;dscs=1;}uchar read_ds(uchar add){uchar ds_date;dsas=1;dsds=1;dsrw=1;dscs=0;P0=add;dsas=0;dsds=0;P0=0xff;ds_date=P0;dsds=1;dsas=1;dscs=1;return ds_date;}void set_time(){write_ds(4,10);write_ds(2,32);}void set_alarm(uchar ashi,uchar afen,uchar amiao){write_ds(1,amiao);write_ds(3,afen);write_ds(5,ashi);}void main(){init();while(1){keyscan();if(flag1==1)didi();if(flag==0){miao=read_ds(0);fen=read_ds(2);shi=read_ds(4);write_sfm(10,miao);write_sfm(7,fen);write_sfm(4,shi);}}}void exter() interrupt 0{ uchar c;flag1=1; c=read_ds(0x0c); }。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

郭天祥的学ARM和学单片机一样简单视频教程1.08G第一章嵌入式开发系统概况(70分钟)(第一讲)一、开发平台硬件资源二、开发平台软件资源及文档三、开发平台硬件安装四、开发平台软件安装1、VMARE虚拟机的安装2、LINUX操作系统的安装3、交叉环境GCC的安装编译第二章测试程序讲解一、整板测试(33分钟)(第二讲)1、在u-boot下用串口下载测试程序2、对各个实验进行演示操作,测试相应模块的功能3、在u-boot下用网口下载测试程序二、ADS1.2 开发环境使用及启动代码分析(第二讲)1、ADS1.2 开发环境使用(22分钟)(1)、工程的建立(2)、工程的编译分析(3)、硬件的仿真调试2、启动代码分析(80分钟)(1)、代码启动流程分析(2)、相关寄存器配置分析(3)、44binit.s讲解(4)、option.s讲解(5)、memcfg.s讲解(6)、main.c讲解(7)、相应头文件讲解三、S3C444B0X I/O口与中断的分析(第三讲)1、S3C444B0X I/O口(37分钟)(1)、I/O口寄存器配置(2)、I/O口控制LED代码分析(3)、UART寄存器配置及代码简要分析2、中断(46分钟)(1)、中断模式(2)、中断寄存器配置(3)、仿真调试按键外部中断的程序流程四、AD温度采集显示、音频接口、NAND flash 读写(第四讲)1、AD温度采集显示(30分钟)(1)、AD工作原理(2)、AD寄存器配置(3)、LM35温度传感器介绍(4)、代码分析(5)、仿真演示实验2、音频(32分钟)(1)、WAV格式及结构分析(2)、IIS相关寄存器配置及代码分析(3)、硬件结构分析(4)、仿真演示实验3、 NAND Flash (41分钟)(1)、NAND Flash与NOR Flash区别(2)、芯片参数分析(3)、硬件结构分系(4)、对应芯片手册的读写时序分析代码(5)、仿真演示实验五、USB D12从设备(108分钟)(第五讲)1、USB协议介绍2、下位机代码简要分析3、DRIVER STUDIO软件的安装4、上位机驱动sys、inf文件生成概述5、上位机应用程序的实现(1)、工程的建立(2)、代码编写及分析(3)、对应应用程序编写下位机程序实现USB通信第三章 ucos讲解(145分钟)(第六讲)一、uC/OS-II的简单应用1、uC/OS-II简介(1)、MAIN函数的结构(2)、任务的结构(3)、重要uC/OS-II API函数介绍(4)、多任务的机制2、代码分析(1)、启动代码分析(2)、相关函数和结构体的介绍(3)、任务的创建(4)、S3C44B0X定时器介绍3、邮箱的实现(1)、邮箱的建立(2)、程序流程分析(3)、仿真演示实验4、事件的实现(1)、事件的建立(2)、程序流程分析(3)、仿真演示实验5、uC/OS-II实现AD对LM35温度采集(1)、uC/OS-II文件目录介绍(2)、程序讲解(3)、超级终端显示温度(4)、编写程序更改超级终端上显示字体和背景的颜色6、uCOSII_uCGUI实现彩色液晶显示第四章嵌入式uclinux讲解一、u-boot移植和分析(90分钟)(第七讲)1、u-boot介绍2、u-boot移植介绍3、u-boot代码烧写进FALSH4、代码编译分析(1)、config.mk讲解(2)、start.S讲解(3)、memsetup.S讲解(4)、board.c讲解(5)、TX44B0.c讲解(6)、u-boot.lds讲解(7)、相应头文件讲解二、uclinux讲解1、准备工作(5分钟)(第八讲)(1)、uclinux复制(2)、uclinux移动(3)、uclinux解压2、uclinux文件目录介绍(10分钟)(第八讲)3、启动代码分析(107分钟)(1)、irq.c讲解(2)、time.c讲解(3)、head.s讲解(4)、misc.c讲解(5)、head-armv.s讲解(6)、main.c讲解(7)、version.s讲解(8)、s3c44b0-rtc.c讲解(9)、对应头文件讲解(10)、u-boot用网口烧写uclinux内核并且固化到FLASH中运行的流程分析4、字符驱动程序(15分钟)(第八讲)(1)、字符驱动简介(2)、file_operations结构体介绍5、GPIO字符驱动程序(130分钟)(第八讲)(1)、驱动程序编写(2)、快照的使用(3)、内核配置(4)、内核编译(5)、演示实验6、中断字符驱动程序(52分钟)(第八讲)(1)、驱动程序编写(2)、内核配置(3)、内核编译(4)、演示实验7、AD字符驱动程序(10分钟)(第八讲)(1)、驱动程序编写(2)、内核配置(3)、内核编译(4)、演示实验8、RTC字符驱动程序(13分钟)(第八讲)(1)、驱动程序编写(2)、内核配置(3)、内核编译(4)、演示实验9、网络驱动编程(186分钟)(第九讲)(1)、网络协议简介(2)、网络驱动框架简介(3)、结构体、变量、函数介绍(4)、Source Insight 软件的安装和使用(5)、8390.h、8390.c、Ne.c、Netdevice.h程序讲解(6)、网络文件系统NFS的建立与配置(7)、LINUX内核的配置、编译(8)、演示开发板与PC机通过NFS实现文件共享10、块设备-USB主设备CH375驱动编程(122分钟)(第十讲)(1)、USB驱动框架简介(2)、CH375-hw.h、Ch375-hcd.c程序讲解(3)、LINUX内核的配置(4)、设备号的创建(5)、LINUX内核的编译(6)、终端环境插入scsi-disk模块、usb核、usb-storage 、ch375-hcd模块(7)、插入U盘演示实验,显示目录、创建文件夹第四章嵌入式uclinux讲解一、u-boot移植和分析(90分钟)(第七讲)1、u-boot介绍2、u-boot移植介绍3、u-boot代码烧写进FALSH4、代码编译分析(1)、config.mk讲解(2)、start.S讲解(3)、memsetup.S讲解(4)、board.c讲解(5)、TX44B0.c讲解(6)、u-boot.lds讲解二、uclinux讲解1、准备工作(5分钟)(第八讲)(1)、uclinux复制(2)、uclinux移动(3)、uclinux解压2、uclinux文件目录介绍(10分钟)(第八讲)3、启动代码分析(107分钟)(1)、irq.c讲解(2)、time.c讲解(3)、head.s讲解(4)、misc.c讲解(5)、head-armv.s讲解(6)、main.c讲解(7)、version.s讲解(8)、s3c44b0-rtc.c讲解(9)、对应头文件讲解(10)、u-boot用网口烧写uclinux内核并且固化到FLASH中运行的流程分析4、字符驱动程序(15分钟)(第八讲)(1)、字符驱动简介(2)、file_operations结构体介绍5、GPIO字符驱动程序(130分钟)(第八讲)(1)、驱动程序编写(2)、快照的使用(3)、内核配置(4)、内核编译(5)、演示实验6、中断字符驱动程序(52分钟)(第八讲)(1)、驱动程序编写(2)、内核配置(3)、内核编译(4)、演示实验7、AD字符驱动程序(10分钟)(第八讲)(1)、驱动程序编写(2)、内核配置(3)、内核编译(4)、演示实验8、RTC字符驱动程序(13分钟)(第八讲)(1)、驱动程序编写(2)、内核配置(3)、内核编译(4)、演示实验9、网络驱动编程(186分钟)(第九讲)(1)、网络协议简介(3)、结构体、变量、函数介绍(4)、Source Insight 软件的安装和使用(5)、8390.h、8390.c、Ne.c、Netdevice.h程序讲解(6)、网络文件系统NFS的建立与配置(7)、LINUX内核的配置、编译(8)、演示开发板与PC机通过NFS实现文件共享10、块设备-USB主设备CH375驱动编程(122分钟)(第十讲)(1)、USB驱动框架简介(2)、CH375-hw.h、Ch375-hcd.c程序讲解(3)、LINUX内核的配置(4)、设备号的创建(5)、LINUX内核的编译(6)、终端环境插入scsi-disk模块、usb核、usb-storage 、ch375-hcd模块(7)、插入U盘演示实验,显示目录、创建文件夹。

相关文档
最新文档