这是一篇元教程(meta-tutorial)——其他教程教你怎么使用AVR单片机,本篇教程教你如何使用本系列教程。

我们的教程已经把板载LED讲完了,但是教会你的不应该只是如何使用LED。你应该已经知道:

单片机的英文是microcontroller,主要作控制用途,它内部集成了存储器;

我们使用的单片机型号是ATmega324PA,它是Atmel公司的8位AVR架构单片机,Atmel公司现已被Microchip公司收购;

main() 函数可以不写  ;

在Debug模式下编译的程序比Release下的要多一些调试信息,性能会稍差一点,但更方便调试;

delay() 函数本身是精准的,但是加上其他代码运行的时间,程序实际运行时间总是比预期长一点;

为了避免代码重复,可以把相同的代码段中不同的部分放进输出,然后对数组遍历;

uint8_t 类型的上限是255,再加上1后,它会变成0;

hex是一种用ASCII字符表示二进制信息的格式,每行开始为冒号,之后都是十六进制数;

把 rand() 的结果对n求模可以得到[0, n-1]范围内的随机整数;

……

这么多内容,在之前的教程中都涉及到了,但是,你都知道吗?

序言里就讲过,单片机涉及到方方面面,也需要尝试与实践。单片机的学习,不是看看教程、敲敲代码就能学好的。

“Arduino虽然有丰富的教程、众多第三方模块和库”,具体是什么?去淘宝看看;

“10位ADC”“74HC595”“555定时器”,都是些什么?去百度看看;

“Atmel Studio 7.0(简称AS7),是……”,有超链接,点进去看看;

“输入模式下表示高阻态”,高阻态是什么?“库下载完以后是不能直接用的”,程序与库是什么关系?从C代码怎样一步一步转换成0和1?“电源波纹不能让程序不能跑飞”,电源波纹是什么?一般有多大?多少算好?程序跑飞会怎么样?哪些厂家的单片机容易跑飞?

……

这些都是学习过程中可以想到的问题。如果想到了,不懂了,查阅了,明白了,你的水平就提高了。至于这系列教程,都只是给你指路而已。

加油!

AVR单片机教程——如何使用本教程的更多相关文章

  1. AVR单片机教程——旋转编码器

    好久没写这个系列了.今天讲讲旋转编码器. 旋转编码器好像不是单片机玩家很常用的器件,但是我们的开发板上有,原因如下: 旋转编码器挺好用的.电位器能旋转的角度有限,旋转编码器可以无限圈旋转:旋转时不连续 ...

  2. AVR单片机教程——数码管

    先解答之前一个思考题:如果不把引脚配置为输出而写高电平,连接LED会怎样? 实验结果是,LED会亮,但相比于输出高电平的情况,亮度很低.这是为什么呢? 通过上一篇教程我们知道,引脚输入输出模式是由寄存 ...

  3. AVR单片机教程——数字输出

    从上一篇教程中我们了解到,按键与开关的输入本质上就是数字信号的读取.这一篇教程要讲的是,控制LED的原理是数字信号的输出.数字IO是单片机编程之有别于桌面编程的各项内容中最简单.最基础的. 在讲数字信 ...

  4. AVR单片机教程——数字输入

    我们已经学习了如何使用按键和拨动开关,不知你有没有好奇 button_down 和 switch_status 等函数是如何实现的.本篇教程带你一探究竟,让我们从按键的原理开始. 在原理图中,按键的符 ...

  5. AVR单片机教程——拨动开关

    在按键的上方有4个拨动开关.开关与按键,在原理和使用方法上都是很类似的,但有不同的用途——按键按下后松开就会弹起,而开关可以保存其状态. <switch.h> 定义了与开关相关的函数.sw ...

  6. AVR单片机教程——按键动作

    上一篇教程中我们学习了如何读取按键状态.而按键的动作,比如单击,至少需要两个状态才能判定,长按.双击的判定更加复杂.今天我们来学习如何使用库函数判断按键单击,以及其实现原理. 我们要实现的是:当一个按 ...

  7. AVR单片机教程——按键状态

    好久没更新了,今天开始继续,争取日更. 今天我们来讲按键.开发板的右下角有4个按键,按下会有明显的“咔嗒”声.如何检测按键是否被按下呢?首先要把按键或直接或间接地连接到单片机上.与之前使用的4个LED ...

  8. AVR单片机教程——随机点亮LED

    之前我们做的闪烁LED和流水灯,灯效都是循环的.这次我们来尝试一些不一样的——每一次随机选择一个LED并点亮. 要实现随机的效果,我们要用C语言标准库中的相关设施: #define RAND_MAX ...

  9. AVR单片机教程——流水灯

    上次我们用 delay 函数与 while 循环实现了一个LED的闪烁.这一次我们把所有LED加入进来,让它们依次闪烁,形成流水灯的效果. 开发板上有4个LED,我们可以用不多的语句把循环体直接描述出 ...

随机推荐

  1. Oracle序列 与 基本函数介绍

    目录 Oracle序列 与 基本函数介绍 常用词汇 数据字典(data dictionary:dd) oracle序列技术理解 账号管理 基本函数介绍及应用 海韵听心 PL/SQL Developer ...

  2. dump文件

    https://blog.csdn.net/icandoit_2014/article/details/78739962 可以看出,此种方法只适用于程序崩溃但没有立即自行退出的情况.倘若程序故障后自行 ...

  3. U盘量产过程PS2251-07(PS2307) - F/W 01.05.10 [2014-05-23]

    说明本篇文章可能无法解决你的问题,请谨慎尝试.本博客中使用的工具提供下载(如果没有积分,可联系作者免费获取)ChipGenius_v4_00_0030UPTool_v2.089起因 U盘原先正常使用, ...

  4. ogr ogr2ogr 矢量数据格式转换 ogrinfo 矢量数据图层信息操作 ogr gdal的一部分 gdal 命令行 库操作

  5. 【Java.Regex】用正则表达式查找Java源文件中的注释

    代码: package regex; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.I ...

  6. chrome 打开本地 pdf 会自动开启下载

    正解:修改注册表:[HKEY_CLASSES_ROOT\.pdf],将 Content Type 的值改为: application/pdf 即可

  7. INotifyPropertyChanged PropertyChangedEventArgs获取变更属性

    INotifyPropertyChanged: 该接口包含一个事件, 针对属性发生变更时, 执行该事件发生. // // 摘要: // 通知客户端属性值已更改. public interface IN ...

  8. 一、jenkins下载及安装

    一.安装 官网地址:https://jenkins.io/zh/ 1.下载war包,放到tomcat——>webapps下,双击bin——>startup.bat启动 2.打开命令提示符. ...

  9. 为什么NtReadVirtualMemory 硬件断点无法下断

    win7 x64为例 nt!NtReadVirtualMemory ----- nt!MmCopyVirtualMemory NTSTATUS NTAPI MmCopyVirtualMemory(IN ...

  10. 如何把VMware Workstation使用的虚拟SCSI磁盘转换成虚拟IDE硬盘

    如何把VMware Workstation使用的虚拟SCSI磁盘转换成虚拟IDE硬盘  摘自:http://blog.sina.com.cn/s/blog_7525b71f0101d0u8.html ...