jianhong_wu 发表于 2016-1-17 11:10

从单片机基础到程序框架(连载)

本帖最后由 jianhong_wu 于 2018-5-12 10:40 编辑

前言:       《从单片机基础到程序框架(2020版)》计划写到2020年左右就可以完稿,后续每两年左右我都会更新一次版本,不断推出2022版,2024版,2026版……2040版……以最简单的51单片机平台和外设,去挖掘最有逻辑最有深度最有队形最有实用的单片机艺术,以及如何像电影导演一样埋包袱,抖包袱,镜头之间如何完美切换,如何把故事讲连贯,如何全场无尿点,这些都是值得我用一生的时间去追求和完善的。同时,该教程免费授权给所有的出版社和做单片机学习板的厂家和各大培训机构以及全国各大院校,我本人不从中赢利也不收取任何版权费用,我本人也不卖书也不卖学习板也不搞线下培训。该教程的版权无偿捐给全社会。
       等到2020年左右完成初稿后,我也会把所有章节整合成一个带目录的pdf文档免费分享给大家。感谢大家关注。

第一节:我的价值观。第二节:初学者的疑惑。
第三节:单片机最重要的一个特性。
第四节:平台软件和编译器软件的简介。
第五节:用keil2软件关闭,新建,打开一个工程的操作流程。
第六节:把.c源代码编译成.hex机器码的操作流程。
第七节:本节预留。第八节:把.hex机器码程序烧录到单片机的操作流程。
第九节:本节预留。
第十节:程序从哪里开始,要到哪里去?
第十一节:一个在单片机上练习C语言的模板程序。
第十二节:变量的定义和赋值。
第十三节:赋值语句的覆盖性。
第十四节:二进制与字节单位,以及常用三种变量的取值范围。
第十五节:二进制与十六进制。
第十六节:十进制与十六进制。
第十七节:加法运算的5种常用格式。
第十八节:连加、自加、自加简写、自加1。
第十九节:加法运算的溢出。
第二十节:隐藏中间变量为何物?
第二十一节:减法运算的5种常见格式。
第二十二节:连减、自减、自减简写、自减1。
第二十三节:减法溢出与假想借位。
第二十四节:借用unsigned long类型的中间变量可以减少溢出现象。
第二十五节:乘法运算中的5种常用组合。
第二十六节:连乘、自乘、自乘简写,溢出。
第二十七节:整除求商。
第二十八节:整除求余。
第二十九节:“先余后商”和“先商后余”提取数据某位,哪家强?
第三十节:逻辑运算符的“与”运算。
第三十一节:逻辑运算符的“或”运算。
第三十二节:逻辑运算符的“异或”运算。第四十节:关系符的等于“==”和不等于“!=”。
第三十三节:逻辑运算符的“按位取反”和“非”运算。
第三十四节:移位运算的左移。
第三十五节:移位运算的右移。
第三十六节:括号的强制功能---改变运算优先级。
第三十七节:单字节变量赋值给多字节变量的疑惑。
第三十八节:第二种解决“运算过程中意外溢出”的便捷方法。
第三十九节:if判断语句以及常量变量的真假判断。
第四十节:关系符的等于“==”和不等于“!=”。
第四十一节:关系符的大于“>”和大于等于“>=”。
第四十二节:关系符的小于“<”和小于等于“<=”。
第四十三节:关系符中的关系符:与“&&”,或“||”。
第四十四节:小括号改变判断优先级。
第四十五节: 组合判断if...else if...else。
第四十六节: 一维数组。
第四十七节: 二维数组。
第四十八节: while循环语句。
第四十九节: 循环语句do while和for。
第五十节: 循环体内的continue和break语句。
第五十一节: for和while的循环嵌套。
第五十二节: 支撑程序框架的switch语句。
第五十三节: 使用函数的三要素和执行顺序。
第五十四节: 从全局变量和局部变量中感悟“栈”为何物。
第五十五节: 函数的作用和四种常见书写类型。
第五十六节: return在函数中的作用以及四个容易被忽略的功能。
第五十七节: static的重要作用。
第五十八节: const(或code)在定义数据时的作用。
第五十九节: 全局“一键替换”功能的#define。
第六十节: 指针在变量(或常量)中的基础知识。
第六十一节: 指针的中转站作用,地址自加法,地址偏移法。
第六十二节: 指针,大小端,化整为零,化零为整。
第六十三节: 指针“化整为零”和“化零为整”的“灵活”应用。
第六十四节: 指针让函数具备了多个相当于return的输出口。
第六十五节: 指针作为数组在函数中的入口作用。
第六十六节: 指针作为数组在函数中的出口作用。
第六十七节: 指针作为数组在函数中既“入口”又“出口”的作用。
第六十八节: 为函数接口指针“定向”的const关键词。
第六十九节: 宏函数sizeof()。
第七十节: “万能数组”的结构体。
第七十一节: 结构体的内存和赋值。
第七十二节: 结构体的指针。
第七十三节: 结构体数据的传输存储和还原。
第七十四节: 结构体指针在函数接口处的频繁应用。
第七十五节: 指针的名义(例:一维指针操作二维数组)。
第七十六节: 二维数组的指针。
第七十七节: 指针唯一的“单向”输出通道return。
第七十八节: typedef和#define和enum。
第七十九节: 各种变量常量的命名规范。
第八十节: 单片机IO口驱动LED。
第八十一节: 时间和速度的起源(指令周期和晶振频率)。
第八十二节: Delay阻塞延时控制LED闪烁。
第八十三节: 累计主循环的“非阻塞”延时控制LED闪烁。
第八十四节: 中断与中断函数。
第八十五节: 定时中断的寄存器配置。
第八十六节: 定时中断的“非阻塞”延时控制LED闪烁。
第八十七节: 一个定时中断产生N个软件定时器。
第八十八节: 两大核心框架理论(四区一线,switch外加定时中断)。
第八十九节: 跑马灯的三种境界。
第九十节: 多任务并行处理两路跑马灯。
第九十一节: 蜂鸣器的“非阻塞”驱动。
第九十二节: 独立按键的四大要素(自锁,消抖,非阻塞,清零式滤波)。
第九十三节: 独立按键鼠标式的单击与双击。
第九十四节: 两个独立按键构成的组合按键。
第九十五节: 两个独立按键的“电脑键盘式”组合按键。
第九十六节: 独立按键“一键两用”的短按与长按。
第九十七节: 独立按键按住不松手的连续均匀触发。
第九十八节: 独立按键按住不松手的“先加速后匀速”的触发。
第九十九节: “行列扫描式”矩阵按键的单个触发(原始版)。
第一百节: “行列扫描式”矩阵按键的单个触发(优化版)。
第一百零一节: 矩阵按键鼠标式的单击与双击。
第一百零二节: 两个“任意行输入”矩阵按键的“有序”组合触发。
第一百零三节: 两个“任意行输入”矩阵按键的“无序”组合触发。
第一百零四节: 矩阵按键“一键两用”的短按与长按。
第一百零五节: 矩阵按键按住不松手的连续均匀触发。
第一百零六节: 矩阵按键按住不松手的“先加速后匀速”触发。
第一百零七节: 开关感应器的识别与软件滤波。
第一百零八节: 按键控制跑马灯的启动和暂停和停止。
第一百零九节: 按键控制跑马灯的方向。
第一百一十节: 按键控制跑马灯的速度。
第一百一十一节: 工业自动化设备的开关信号的运动控制。
第一百一十二节: 数码管显示的基础知识。
第一百一十三节: 动态扫描的数码管显示数字。
第一百一十四节: 动态扫描的数码管显示小数点。
第一百一十五节: 按键控制数码管的秒表。
第一百一十六节: 按键控制数码管的倒计时。
第一百一十七节: 按键切换数码管窗口来设置参数。

yuansy00983 发表于 2016-1-17 21:02

喝个热汤,占个座先,支持楼主

msblast 发表于 2016-1-17 21:07

为你的认真执着点个赞吧。

ccmc 发表于 2016-1-17 23:41

楼主很热心,不过等到2023年会不会稍显有点晚...
现在技术日新月异,7年后已经是另外一番景象了.

menfiss 发表于 2016-1-18 07:53

这个要顶

robter 发表于 2016-1-18 08:00

很好很好,感谢楼主的好资料

炽天使11233 发表于 2016-1-18 08:40

一直持续关注中,吴老师是个热心人,点赞

lfc315 发表于 2016-1-18 08:46

7年。。。

hyl1615 发表于 2016-1-18 08:59

楼主辛苦了

penguin008 发表于 2016-1-18 09:09

这是个很好的开始,要**,加油!

cooldog123pp 发表于 2016-1-18 09:09

这个好哈哈

深圳闪电侠 发表于 2016-1-18 09:18

:victory:

犹豫的大三 发表于 2016-1-18 09:20

7年时间太久了

21ic小喇叭 发表于 2016-1-18 09:22

期待楼主给我们带来更多的干货哦~~

我爱你的吻123 发表于 2016-1-18 10:18

支持支持。期待大作。。。

jianhong_wu 发表于 2016-1-18 11:14

本帖最后由 jianhong_wu 于 2016-8-1 17:58 编辑

第一节:我的价值观。      我2006年毕业,2009年就出来做自由职业者在深圳以接单片机项目谋生,到现在我有自己的机器人技术有限公司,做数控机器人系统,运动卡,三轴五轴联动之类的产品。目前公司的ARM单片机编程,DSP编程,FPGA编程,电路板设计,上位机软件都是由我带领的研发团队在做。我只专心做技术,而市场,生产,行政,资金,财务,采购都不用我分心去管,有我另外的合伙人雷总去打理,所以我常感恩能过上研发创作的日子,是因为有雷总的关照。      光有经济保障还是不够的,人最重要的是要找到自己的归宿自己的位置。我最爱看老子,庄子,孔子,王阳明的圣人书,王阳明说人人皆可成为圣人,所以我一直在追求圣人之道,我渴望成为圣人,圣人之道有真三不朽之说,立功,立言,立德。在立功层面,我这一辈子的定位就是做技术,我想做超级宇宙技术大牛,特别牛的那种牛,然后以我的技术协助雷总把我们的机器人公司做大做强。在立言层面,在不涉及我公司商业机密的前提下,我的天命和归宿就是做单片机技术分享,写一辈子源源不断的技术分享连载帖,然后写一本《从单片机基础到程序框架》的书,帮助更多单片机初学者,出书可以满足我在立言方面的追求。在立德层面,我平时信因果,在生活中多传播正能量。       我有自知之明,我的天命就是传播单片机技术。人最宝贵的东西是生命,生命属于人只有一次,人的一生应当这样度过:当他回首往事的时候,他不因虚度年华而悔恨,也不应碌碌无为而羞愧。在他临死的时候,他能够这样说:我的整个生命和全部精力,都献给了世界上最壮丽的事业——为传播单片机技术而奋斗。

autopccopy 发表于 2016-1-18 11:26

顶一下。留名!科技更新很快,2023年都不知道是什么世界了~~~~

xinghuayu 发表于 2016-1-19 11:13

火前留名

蜂蜜大王 发表于 2016-1-19 13:27

666

kn988 发表于 2016-1-19 20:15

期盼楼主分享更多的宝贵资料!
放个板凳、占个位置。
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 从单片机基础到程序框架(连载)