现在开始讲述信源设计,该部分主要工作是设计传感数据采集装置,项目中以温度为对象。

单片机选型必须综合考虑性能和价格,身为硬件开发菜鸟,选用便宜易开发的51单片机,包括预选和终选两个步骤:

  • MIPS(每秒钟百万条指令),预选单片机,预计该单片机处理一段代码需要的时间为t1,编写完代码后,使用如下方法查看实际代码运行时间(使用keil的调试模式查看代码运行时间(以51单片机代码为例),应该注意处理器倍频时机器周期的缩短,此处晶振应该填倍频后的数值),假定为t2,希望t2<t1,且越接近越好,如果t2>t1,要不晶振倍频,要不更换最小机器周期更短的单片机;
  • ROM和RAM,先用如下方法(KEIL MDK 查看代码量、RAM使用情况--RO-data、RW-data、ZI-data的解释)计算程序运行需要的ROM和RAM的大小,估计片内ROM和RAM是否够用,如果不够用,则需要使用片外ROM和RAM,或者更换片内ROM和RAM更大的单片机;
  • 引脚数量和功能(I2C,UART,AD/DA等),秉承适度够用的原则即可;
  • 根据具体情况,需要额外考虑功耗、工作温度、供电电压等,一般可靠性为军用级>工业级>民用级;
  • 土豪可以无视以上步骤,哪个贵选哪个一般没什么大问题。

晶振是单片机最小系统能否稳定工作的关键,也是最小系统频率最高的电路,需要认真对待以下两点:

  • 采用温度稳定性好的晶振,实际购买晶振时除频率和推荐电路外,很可能不知道更多的信息,此时需要对晶振进行残酷的测试,测试方法见单片机晶振电路设计资料;
  • 考虑最差的运行情况(温度变化剧烈、振动严重、静电干扰复杂等等),使用铺铜缩小晶振环路面积、晶振外壳接地、适当增大焊盘等等,晶振电路案例及分享里分享了典型晶振电路的原理及常见问题。

复位电路可采用专门的复位芯片,经费不足则使用RC电路,注意任何电容只要充电就需要放电,因此需要设置回路给RC复位电路的电容放电,一般反并联二极管即可。

由于测温精度要求不高,简单地使用多个DS18B20并联测温,需要注意:

  • 读取多个传感器温度的方法见DS18B20多ROM搜索并读取温度,别懒,DS18B20数据手册-中文版一定要看,没时间钻研或者IO口多得蛋疼就使用多个IO口;
  • 部分单片机IO口寄存器更新需要时间,因此每次写引脚需要延迟一小段时间,保证写引脚稳定;
  • OneWire与I2C结构类似,为OC门,需要上拉电阻,保证输出高电平稳定,上拉电阻的取值与频率和总线长度有关,具体可见I2C 上拉电阻选择计算公式。

硬件采用串口与上位机通讯,方便调试,需要认真读一读串口公头母头及232接法、RS232串口线接口及接法和RS232,注意:

  • 计算机一般采用公口,设备一般采用母口,注意接口的定义是针对公口的,所以母口的连线是2-发送数据、3-接收数据,与公口刚好相反(PCB封装选错的记得改回来),所以计算机和设备需要标准连线,计算机与计算机之间需要交叉连线,设备和设备好像就算连线也不能用吧;
  • PCB布线时需要走差分线,方法见利用Protel (Altium Designer)进行差分线布线;
  • 鉴于现在的计算机大多不提供物理串口接口,要用转接口将USB转换为串口,这时需要检测转换信号是否遵循严格的公口的定义(检测输出电平即可);
  • 所有的连线在使用前都必须检测是标准连线还是交叉连线,最好不要剖开连线强行改装;
  • 有时候不知道是软件错了,还是硬件错了,可以下载VSPD虚拟串口排除是否软件Bug。

----转载需获得Wayne Khou同意----

转载于:https://www.cnblogs.com/WayneKhouTech/p/6924678.html

应力波扩频通信系统实现(一)——控制器设计相关推荐

  1. 应力波扩频通信系统一般结构

    上一篇博客粗略讲述了应力波扩频通信的原理,理论比较复杂,对于后续硬件设计而言,只需要直观了解即可.应力波扩频通信系统结构与无线扩频通信系统类似,发射端和接收端的硬件结构图如图1所示.需要重点提醒,虽然 ...

  2. 最小拍有纹波系统仿真实验matlab代码,最小拍控制器设计.doc

    最小拍控制器设计matlab实验 [实验目的] 了解和掌握有纹波和无纹波最小拍控制器的原理和设计方法. 利用Matlab仿真,观察系统的输入输出曲线. [实验内容] 系统如图所示, G(s)?-R( ...

  3. 基于 FPGA 的 UART 控制器设计(VHDL)(下)

    今天给大侠带来基于FPGA的 UART 控制器设计(VHDL)(下),由于篇幅较长,分三篇.今天带来第三篇,下篇,使用 FPGA 实现 UART.话不多说,上货. 之前有关于 Veriliog HDL ...

  4. a4988 脉宽要求_基于STM32的微型步进电机驱动控制器设计

    基于STM32的微型步进电机驱动控制器设计 摘 要: 设计了一种微型步进电机驱动控制器,通过上位机界面修改步进电机转速.旋转角度.细分系数.该设计以STM32F103T8U6作为主控制器,以A4988 ...

  5. 直接序列扩频通信系统

    代码下载:https://download.csdn.net/download/xvrixingkong/10968192 一.系统功能描述: 实现如下图所示的直接序列扩频通信系统. 信源--不断发送 ...

  6. 最小拍无差控制器MATLAB求解,最小拍控制器设计.doc

    最小拍控制器设计.doc 最小拍控制器设计 matlab 实验实验目的1 了解和掌握有纹波和无纹波最小拍控制器的原理和设计方法.2 利用 Matlab仿真,观察系统的输入输出曲线.实验内容系统如图所示 ...

  7. Matlab实现扩频通信系统

    1 简介 本文阐述了扩展频谱通信技术的理论基础和实现方法,利用MATLAB提供的可视化工具Simulink建立了扩频通信系统仿真模型,详细讲述了各模块的设计,并指出了仿真建模中要注意的问题.在给定仿真 ...

  8. pid控制器matlab仿真研究,基于MATLAB仿真的PID控制器设计毕业设计

    基于MATLAB仿真的PID控制器设计毕业设计 基于 MATLAB 仿真的 PID 控制器设计 摘 要 本论文以温度控制系统为研究对象设计一个 PID 控制器.PID 控制是迄今为止最通用的控制方法, ...

  9. 基于matlab的跳频系统的仿真,基于MATLAB的跳频扩频通信系统的仿真研究

    杨传山 摘 要:随着我国科技的日新月异,随之而来就产生了很多新型的通信方式,如扩展频谱通信就是其中一种,对于跳频通信,它则是扩展频谱通信当中的一种,对于跳频方面的通信.扩展频谱方面的通信.自适应方面的 ...

最新文章

  1. AMD/NV大跌2周后仅两天收复失地 挖矿成背后推手
  2. 为什么现在小学生都学计算机编程了,为何要在小学阶段开展编程教育?
  3. 讲故事的用户故事样例之1
  4. 三剑客之sed常用操作
  5. SAP Spartacus 产品明细页面的 url 设计和数据源
  6. 飞鸽传书 再次报道,回到90年代中期的业界
  7. 伤感网络验证系统_网络攻防演练中弱密码安全治理的几点建议
  8. UVA12015 Google is Feeling Lucky【最值+排序】
  9. 图书管理系统项目总结
  10. cas4.x 单点登录开发入门
  11. matlab kdj代码,KDJ交易系统原理、用法及源代码(KDJ系统)
  12. 滴滴上市年营收超千亿,程维:我必须时刻保持危机感
  13. 2018.12.26 Jquery 使用 slideBox 实现滚动 效果
  14. Arcgis应用(十二)栅格数据翻转(Flip)、镜像(Mirror)、重缩放(Rescale)、旋转(Rotate)、移位(Shift)、弯曲(Warp)
  15. 【flutter】整合高德地图amap_base
  16. C语言程序设计-跳马问题
  17. Nginx-浅析(转)
  18. 企业管理不可忽视“工作日志”
  19. vue 图片 404 显示默认图片
  20. foxmail怎么群发邮件

热门文章

  1. html5游戏开发马赛克对比,canvas实现图片马赛克的示例代码
  2. android卡点视频教程,剪映怎么手动卡点? 剪映app卡点视频效果的制作方法
  3. windows 升级、删除pip
  4. r星服务器正常但是显示202,GTA5错误代码202怎么回事?具体解决方法一览
  5. Ext常见使用问题记录
  6. gb2312 java编码几个字节_彻底搞懂乱码——字符,字节和编码
  7. AI孙燕姿翻唱华语乐坛歌曲一夜爆红全网
  8. 照片恢复哪个软件好终极评定结果
  9. 【ELASTICSEARCH】ElasticSearch 磁盘满解决方案
  10. 《iOS移动开发从入门到精通》图书连载一:如果你也想开发一款自己的APP,可以看一下这篇文