首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    一文解决你对单片机最小系统的所有疑问

    单片机的最小系统就是让单片机能正常工作并发挥其功能时所必须的组成部分,也可理解为是用最少的元件组成的单片机可以工作的系统。怎么理解可以工作呢?在此老宅说一个特例----“可以下载程序”,也就是说一块可以正常的通过下载器完成程序下载的单片机最小系统。这个特例也是我们后面会说到的如何快速判断单片机系统是否正常的一个办法,也就说一个单片机系统,只要能下载程序,那它的最小系统部分的电路是没问题。那单片机最小系统的电路都有哪些部分呢?对51 系列单片机来说, 单片机最小系统一般应该包括: 电源、时钟电路、复位电路三部分。有了这三部分,单片机就能自主的运行程序,完成我们想要完成的任务或者动作。

    02

    蓝牙遥控平衡小车的制作

    出于业余爱好,以及学习自动化控制PID理论,经过多种选择后决定制作平衡车进行实际操练。刚开始试着用单纯的裸机,完成直立控制,然后慢慢的又增加了屏幕显示,用于参数调整显示,再然后用蓝牙透传进行串口遥控,并且增加用遥控器进行PID参数调增。增加这些功能以后,再进一步逐渐的增加功能,就需要进行在多任务的时间调配上进行更严格分配,每增加一个功能,都需要重新调整在这个上面花费了不少时间。例如,在屏幕的显示上,由于需要较多时间进行数据端口的模拟,耗费大量时间,如果需要增加多个参数显示,相应的屏幕程序就需要更多时间,就会改变整个程序的时间分配,平衡车直立控制就会不稳定,难与调试。由于上面的困扰,并且之前2010年的时候一个偶然机会了解到了RT-Thread实时操作系统,决定试着用操作系统的理念进行编写,可以省去在裸机调试时间分配的困扰。由于裸机我用了STM32F103C8T6芯片只有64KB,我本人懒于修改硬件,尝试修剪RTT,用尽可能少的组件,手动的把3.0.4版本去掉外围,只用内核。在内核上把平衡车的控制分为直立控制、蓝牙控制、屏幕控制、以及原来的LED控制,后续增加超声波,指南模块等。尽可能使用现成的元件搭建起实物原型,然后再不断增加功能,从扩充的过程中完成控制理论的学习和对实时操作系统的掌握。由于有限的代码空间也进一步锻炼代码的精简训练。

    01
    领券