单片机技术网|技术阅读
登录|注册

您现在的位置是:单片机技术网 > 技术阅读

技术阅读

  • 华芯微特SWM181CBT6智能小车设计V1.0

    2024-06-22

          本小车参考立创开源课堂项目基于51单片机的智能小车设计(附开源项目网址【单片机】基于51单片机的智能小车设计 - 嘉立创EDA开源硬件平台 (oshwhub.com))。主控制采用合宙的SWM181CBT6最小系统板子,9.9元包邮,板载的SWM181CBT6芯片5块钱就可以买到一颗,比STC89C52RC还便宜。SWM181CBT6硬件支持PWM、支持三路比较器输入,可以简化电路,还节省两篇LM393;关键是SWM181CBT6可以跑RT-THREAD NANO,可以先实现多任务操作(参考)。       小车第一版实现的功能有:1.左右两个车灯,模拟行车过车中的车灯状态;2.无源蜂鸣器,模拟汽车鸣笛...

  • F280049C学习笔记---烧写程序至FLASH

    2024-06-22

    F280049的两种下载调试方式:(1)RAM调试:编译器将程序下载到DSP的片内RAM中运行,RAM属于随机存储器,其读写速度快。因此,将程序下载到RAM中的执行速度比较快,方便程序的调试。但是,RAM属于易失性存储器,其存储的数据掉电消失。因此,RAM下载只适合程序的调试,不适合应用。(2)FLASH调试:编译器将程序下载到DSP的片内ROM中,ROM属于非易失性存储器,掉电后能保存程序。但是ROM的读写速度比较慢,不适合程序的调试。      通常一个项目的初期,比较适合将程序下载到RAM中进行调试,但是当最终程序全部调试完毕,需要做成产品销售时,就...

  • F280049C学习笔记---定时器与中断代码分析

    2024-06-22

    1.导入timer定时器中断例程点击菜单栏Project->Import CCS Projects,选择C:\ti\c2000\C2000Ware_4_01_00_00\device_support\f28004x\examples文件下的timer例程。激活工程,打开timer_ex1_cputimers.c源程序。2.代码分析:2.1定时器操作步骤InitCpuTimers();和ConfigCpuTimer(&CpuTimer0, 100, 1000000);是TI公司提供的定时器的初始化代码(直接调用就可以了,不用修改代码)和定时器的配置函数,根据配置函数可以很方便地进行定时器定时时间的设置。配置函数的声明和源码可以在f28004x_cputimers.c文件找到。对于定时器的使用我们并不需要深入了解源...

  • 基于51单片机的超声波三路测距

    2024-06-22

    ******最新代码下载连接已经更新****,下载方法见底部利用51单片机实现超声波测距功能,利用单片机控制超声波的发射和对超声波自发射至接收往返时间的计时。系统定时发射超声波,在启动发射电路的同时启动单片机内部的定时器,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波的反射波时,接收电路输出端产生一个负跳变,单片机检测到这个负跳变信号后,停止内部计时器计时,读取时间,计算距离,测量结果输出给LCD显示。 1.系统电路图超声波测距仪由单片机AT89C51、超声波电路和显示电路还有警报电路,按键控制等组成,...

  • F280049C学习笔记---SCI通信初始化代码分析

    2024-06-22

    SCIA初始化代码如下:void scia_fifo_init(int ibaud){   SciaRegs.SCICCR.all =0x0007;                                                  SciaRegs.SCICTL1.all =0x0003;     SciaRegs.SCICTL2.bit.RXBKINTENA =1;   if(ibaud==9600)   {       SciaRegs.SCIHBAUD.all = 0x0001;       SciaRegs.SCILBAUD.all = 0x0044;   }   SciaRegs.SCICCR.bit.LOOPBKENA =0; // Enable loop back   SciaRegs.SCIFFTX.all=0xC028;   SciaRegs.SCIFFRX.all=0x0021;   SciaRegs.SCIFFCT.all=0x00...

  • 动图 | 电气控制原理

    2024-06-22

    今天从低压电器、电动机及控制线路、传感器及控制原理三部分来分享22张超赞的原理动图低压电器部分1按钮开关2闸刀开关3行程开关4交流接触器5热继电器6时间继电器7速度继电器电动机及控制线路1异步电动机2直流电动机3步进电动机4永磁电机5正反转控制6自动往返控制7顺序控制8多点控制9星三角启动传感及控制原理1布料张力测量2MQN型气敏电阻3气泡式水平仪4直滑式电位器控制气缸活塞行程5电容加速度传感器文章源自:网络版权归原作者所有,如有侵权,请联系删除

  • 人生就像画PCB一样

    2024-06-22

    人生就像画PCB一样1、要先布局,后走线;走线再细致,布局失败,也是白搭;人生也是一样,要有理想和长远的规划。2、如果只图早期的走得舒服,后面绕来绕去都是死路。人生也是一样:能吃苦吃苦半辈子,怕吃苦,吃苦一辈子。3、建立一定的规则,避免情况复杂之后,全无章法的乱绕线。人生也是一样:自由和约束是相辅相成的。4、优质的走线区域留给重要的信号和期间。人生也是一样:重要的时间留给重要的事情,你的精力分配决定你的层次。5、敏感信号,原理强干扰源。人生也是一样:近朱者赤近墨者黑。文章转自:网络版权归原作者所有,如有侵权,请联...

  • F280049C学习笔记---闪灯代码分析

    2024-06-22

          上篇笔记()记录了寄存器项目工程建立方法和基于寄存器操作GPIO口实现闪灯的实验。今天来分析一下点灯的代码。头文件#include "F28x_Project.h"F28X系列项目工程的头文件和例程头文件,F28X系列项目中必须包含的头文件。宏定义#define DEVICE_GPIO_PIN_LED_GREEN    34#define DEVICE_GPIO_PIN_LED_RED    23这两句代码分别定义了用户LED所连接的控制器引脚的编号分别为GPIO34和GPIO23。下图为LED灯与F280049C之间的连接关系。main函数3.1  InitSysCtrl();对芯片进行初始化,其中包括关闭看门狗功能,初始化锁相环PLL,初始化外设时...

  • F280049C学习笔记---闪灯(寄存器操作)

    2024-06-22

          因为一个项目中用到DSP处理器,所以最近开始学习项目中用到的DSP的GPIO操作、SCI通信、DAC和ADC数据处理和SPI通信功能。之前学习过STM32和51单片机,感觉还算是好学吧,接触DSP之后发现DSP还是有点难度的:难在相关学习资源和教材都是非常少的,教材也只能找到F28355的教材,当然书的内容没有51和32的书籍质量高,基本也是翻译芯片手册和开发手册。所以学F280049C只能看芯片手册和CSDN找些资料看看吧。昨天搞了一个上午算是建成了DSP项目的库函数版工程并利用库函数成功点亮LED,库函数工程建立见。说实话这个建个工程也够麻烦的。今天参考...

  • LAUNCHXL-F280049C学习笔记之工程建立

    2024-06-22

    Step1.下载C2000Ware软件并安装下载地址如下:http://www.ti.com.cn/tool/cn/C2000WARE?keyMatch=C2000Ware%201%2000%2006%2000%20setup&tisearch=Search-CN-Products安装该软件主要是为了获得C2000系列DSP的相关资料,比如LAUNCHXL-F280049C电路原理图、相关Demo程序,库文件等等。安装之后打开安装目录的文件夹如下图所示,工程建立主要用到的就是下图中标识的两个文件夹。Step2.新建工程:打开CCS,点击Project ,New CCS Project...选择器件为:目标选择28004x Piccolo,TMS320F280049C    ,选择仿真器类型为XDS110USB(根据自己的需要选择)...

  • Luatos 学习记录---闪烁的LED灯

    2024-06-22

          首先通过gpio.setup(pin, mode, pull, irq)设置管脚功能,函数中各参数的功能如下:l输出模式返回设置电平的闭包, 输入模式和中断模式返回获取电平的闭包本例中设置27pin为上拉输出,如下指令所示,这里返回的LEDA。可以通过LEDA这个变量对27pin进行操作。localLEDA=gpio.setup(27,0,gpio.PULLUP)比如LEDA(1)点亮LED,LEDA(0)熄灭LED。这里闪烁代码这样实现的LEDA(count%3==0and1or0)这句话表示每隔1.5秒,LED的状态变换一次。当count%3==0成立即为1的时候,逻辑与返回1,此时逻辑或返回1,即LEDA(1)当count%3==0不成立即为nil的时候,逻辑...

  • Air780E开发板快速接入腾讯云

    2024-06-21

                CORE-AIR780E 开发板是合宙通信推出的基于 Air780E 模组所开发的,包含电源,SIM 卡,USB,天线,音频等必要功能的最小硬件系统。以方便用户在设计前期对 Air780E 模块 进行性能评估,功能调试,软件开发等用途。      昨天合宙正式推出了LuatOS固件,今天就跟着合宙推出的教程(链接:)学习一下通过了LUATOS的API函数快速接入腾讯云平台。演示视频如下:第一步:建立腾讯物联网产品这里参考合宙推文采用腾讯云的物联网开发平台:https://console.cloud.tencent.com/iotexplorer                              ...

  • 重要重要!!!通知下载连接更新

    2024-06-21

        最近很多人反映一些程序下载连接无效,下载上限了。今天重新分享一下下载下载连接,需要赶快保存。下载连接往下翻。1.proteus仿真下载连接,没有密码:https://share.weiyun.com/nqTOvVbN传感器资料链接,提取码:8051:https://pan.baidu.com/s/1QGZPE9lou0xE5G_KxU8Hsg?pwd=8051链接:https://pan.baidu.com/s/1uSHfqmE1_Kr3ccUxC0BwlQ?pwd=80512.PCB常用库连接,提取码:8051:链接:https://pan.baidu.com/s/1zCxhK9kEANaidMagWlK1ZA?pwd=8051链接:https://pan.baidu.com/s/1UGnfK-3K4hcIIYI-a3aeHw?pwd=80513.超声波测距程序,提取码:8...

  • STM32CubeMX基本应用操作

    2024-06-21

          应公众号粉丝要求,今天推送一篇STM32CubeMX基础应用案例。STM32CubeMX是意法半导体推出的一款图形化的自动创建单片机工程及初始化代码的工具,适用于旗下所有STM32系列产品。本文将以STM32G070CBT6为例介绍STM32单片机基于STM32CubeMX的开发方法,所用开发板为自制STM32G070CBT6的开发板,四层PCB设计如下图所示。第一步:新建工程       首先,打开STM32CubeMX,第一次使用的朋友可以点击右侧的CHECK FOR UPDATE和INSTALL/REMOVE检查一下软件更新并且找到对应芯片的固件库然后下载,软件和固件库都推荐是使用最新版的。      完毕...

  • 华芯微特SWM181CBT6处理器RT-Thread Nano移植记录

    2024-06-21

          RT-Thread Nano 是一个极简版的硬实时内核,它是由 C 语言开发,采用面向对象的编程思维,具有良好的代码风格,是一款可裁剪的、抢占式实时多任务的 RTOS。其内存资源占用极小,对 RAM 与 ROM 的开销非常小,在支持 semaphore 和 mailbox 特性,并运行两个线程 (main 线程 + idle 线程) 情况下,ROM 和 RAM 依然保持着极小的尺寸,RAM 占用约 1K 左右,ROM 占用 4K 左右。RT-Thread Nano功能包括任务处理、软件定时器、信号量、邮箱和实时调度等相对完整的实时操作系统特性。适用于家电、消费电子、医疗设备、工控等领域大量使用的 32 位 ...

  • keil软件测量软件延时时间

    2024-06-21

           单片机C语言编程时,通常有四种延时方法。其中两种非精确延时,两种精确延时。精确延时可以通过硬件定时器实现,也可以通过库函数_nop()_,一个NOP的时间是一个机器周期时间,一个机器时间为12/晶振频率;非精确延时一般通过for循环和while循环实现,通过改变循环次数来改变延时时间,但是C语言循环的执行时间都是不能通过程序看出来的。那么如何观察写的延时到底有多长时间呢?这里有两种方法。方法一:使用STC官方的ISP下载工具软件延时计算器     STC下载工具界面切换到软件延时计算页面,系统频率设置为11.0592MHz和开发板上晶振...

  • 华芯微特SWM18CBT6精确ms延时实现方法

    2024-06-21

           在各类型单片机学习过程中,我们经常会用到延时函数,最近在学习华芯微特SWM181的遇到了一这样一个问题,官方给的库函数中没有精确毫秒延时,只有通过for循环实现的粗略延时。作为擅长CV的我,第一想到就是CSDN找找有没有现成代码的可以拷贝过来直接使用。然后很失望没有找到,再次查看华芯微特的官方库函数,发现有一个 SysTick 时钟案例,于是就修改这个案例实现精确毫秒延时。      上图是官方案例的源代码,其中SysTick_Config函数的功能是初始化系统定时器和中断,然后启动系统滴答时钟定时器,定时时间到则会产生周期性中断.看...

  • 基于51单片机的超声波三路测距

    2024-06-21

    ******代码下载连接已经更新****,下载方法见底部利用51单片机实现超声波测距功能,利用单片机控制超声波的发射和对超声波自发射至接收往返时间的计时。系统定时发射超声波,在启动发射电路的同时启动单片机内部的定时器,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波的反射波时,接收电路输出端产生一个负跳变,单片机检测到这个负跳变信号后,停止内部计时器计时,读取时间,计算距离,测量结果输出给LCD显示。 1.系统电路图超声波测距仪由单片机AT89C51、超声波电路和显示电路还有警报电路,按键控制等组成,如图...

  • p沟道mos管导通条件_通俗易懂:MOS管基本知识(快速入门)

    2024-06-21

    1、三个极的判定G极(gate)—栅极,不用说比较好认 S极(source)—源极,不论是P沟道还是N沟道,两根线相交的就是 D极(drain)—漏极,不论是P沟道还是N沟道,是单独引线的那边.2、N沟道与P沟道判别箭头指向G极的是N沟道 箭头背向G极的是P沟道3、寄生二极管方向判定不论N沟道还是P沟道MOS管,中间衬底箭头方向和寄生二极管的箭头方向总是一致的: 要么都由S指向D,要么都有D指向S4、MOS开关实现的功能信号切换 电压通断5、MOS管用作开关时在电路中的连接方法关键点:确定那一极连接输入端,那一极连接输出端 控制极电平为?V 时MOS管导通 控制极...

  • 条条大路通罗马---流水灯的多种实现方法

    2024-06-21

          学习单片机,流水灯项目必做的一个项目,可以说是I/O输出控制的一个非常典型的例子。流水灯一般是指控制单片机的I/O口的电平状态使开发板上的8个小灯依次一个接一个的点亮,流动起来。今天我们总结一下单片机的流水灯的实现方法。一、流水灯控制的原理       首先来看8个LED的核心电路,如图所示,8个LED灯的通过限流电阻接到了P1口对应的8个引脚上。通过程序向P1口写入一个8位二进制数来改变每个引脚的输出状态,从而控制8个发光二极管的亮灭。当P1=0x7F,将P1口的8位设置为01111111输出,点亮P1.7引脚连接的发光二极管。当P1=0xBF,将P...

  • 多层PCB内部展示

    2024-06-21

          硬件工程师刚接触多层PCB的时候,很容易看晕。动辄十层八层的,线路像蜘蛛网一样。画了几张多层PCB电路板内部结构图,用立体图形展示各种叠层结构的PCB图内部架构。高密度互联板(HDI)的核心 在过孔      多层PCB的线路加工,和单层双层没什么区别,最大的不同在过孔的工艺上。线路都是蚀刻出来的,过孔都是钻孔再镀铜出来的,这些做硬件开发的大家都懂,就不赘述了。      多层电路板,通常有通孔板、一阶板、二阶板、二阶叠孔板这几种。更高阶的如三阶板、任意层互联板平时用的非常少,价格贼贵,先不多讨论。     一般情况下,...

  • 细数二极管常用的8个用途

    2024-06-21

    二极管是十分常用的基础元器件,本文主要介绍了二极管的一些作用,比如防反、整流、稳压、续流、检波、倍压、钳位、包络线检测。1、防反在主回路中,串联一个二极管,是利用二极管的单向导电的特性,实现了最简单可靠的低成本防反接功能电路。这种低成本方案一般在小电流的场合,类似小玩具等。因为二极管导通会有一个0.7V(硅管)的导通压降,如果实际电流很大的话,那么就会产生一个热损耗,会导致发热。而且如果反接的电压很大的话,超过反向截止电压,也会击穿二极管本身,导致二极管失效,起不到防反接的功能,从而不能起到保护后级电路的作用...

  • 单片机开发板DIY

    2024-06-21

           对于单片机的学习,不能只看课本,更重要的是单片机编程实践操作,所以学习单片机就必须要有一个单片机开发板,因为道理很简单:例如你要学习开车,你只刷题库看开车视频,而不去真的找个车练习开车,那估计刷一万年题视频也学不会开车。      而对于初学者,需要什么的开发板?那要看学习什么样单片机,我觉得作为初学者学习单片机,就选择51单片机。因为51单片机功能简单,资料也比较多,学习的话上手也更容易些。而对于51单片机来说,以STC895C52RC为例,其学习主要是学习STC895C52RC单片机IO口、定时器、中断和串口知识。所以我们...

  • 华芯微特SWM181学习笔记--GPIO应用与环境搭建

    2024-06-20

                华芯微特SWM181 系列 32 位 MCU(以下简称 SWM181)内嵌 ARM® CortexTM-M0 内核, SWM181 支持片上包含精度为 1%以内的 24MHz、48MHz 时钟,并提供最大为 248K 字节的 FLASH 和最大 16K 字节的 SRAM。此外,芯片支持 ISP(在系统编程)操作及 IAP (在应用编程),用户可自定义 BOOT 程序。SWM181具有丰富的外设串行总线包括   1 个 CAN 接口,多个 UART 接口、SPI 通信接口(支持主/ 从选择)及 I2C 接口(支持主/从选择)。下图是SWM181最小系统板。1.摘要         本文针对 SWM181 最小系统板如何建立KEIL 开发环境...

  • 基于AT89c51设计的波形发生器

    2024-06-20

    功能说明2. 硬件电路3. proteus仿真4.附录程序功能说明  设计并制作一个函数信号发生器,能够产生三角波、锯齿波、梯形波和方波,方波频率为100HZ;锯齿波频率为100HZ;三角波频率为100HZ;梯形波频率为50HZ。2.硬件电路  DAC0832功能:将波形值得编码转换成模拟值,完成波形的输出。由一片DAC0832和LM324运放组成。DAC0832是一个具有两个输入数据寄存器的8位DAC。DAC0832是具有20条引线的双列直插式CMOS器件,它内部具有两级数据寄存器,完成8位电流D/A转换,股不需要外加电路。DAC0832是电流输出型,示波器上显示波形,通常需要电压信号,电流信...

  • 结合实际聊聊电平转换电路

    2024-06-20

    目录前言一、二极管电平转换电路电路分析二、三极管电平转换电路2.1 电路一电路分析2.2 电路二电路分析三、MOS管电平转换电路电路分析四、电平转换芯片结语前言电路小课堂时间到,今天我们要聊的是 电平转换电路。那么什么是电平转换?为什么需要电平转换?简单说明一下,在我们设计的电路中,不同芯片的引脚使用的电压不同,比如常见的1.8V、3.3V、5V等,在两种不同电压芯片引脚之间进行通讯时候,我们需要使得两边的电平都符合自身的需求且能够进行正常的通讯,这就叫电平转换。因为不同电压芯片之间的通讯存在电平不匹配的问题,同时如果通讯的两...

  • 嵌入式系统常用外围电路设计

    2024-06-20

    按键电路的常用设计参考1、R1上拉电阻  将不确定的信号通过一个电阻钳位在高电平,维持在不被触发的状态或是触发后回到原状态。(个人建议加上)2、C1电容    减小按键抖动及高频信号干扰。(个人建议加上)3、R2限流电阻(取值100欧~10k不等,如果有设置内部上拉,该值不能太大,否则电流不足以拉低IO口)  保护IO口 防止过流过高电压烧坏IO口,对静电或者一些高压脉冲有吸收作用。(个人建议加上)4、D1 ESD二极管 静电保护二极管,防止静电干扰或者损坏IO口。(这个根据PCB的成本及防护级别要求来决定添加与否)外接信号输入设计参考    这和按键有...

  • 51单片机与ESP8266轻松上手Onenet(三)--温度上传onenet平台

    2024-06-20

            51单片机与ESP8266快速上手物联网系列将一步步介绍89C51单片机将采集到的DS18B20的温度数据通过ESP8266 WIFI模块实时上传到onenet云平台这样一个案例。      前面我们硬件对ESP8266模块刷入OneNET的AT固件(),并对于OneNET-MQTT ESP8266 AT指令天测试()。       今天我们修改已有的DS18B20数码测温案例(案例程序下载地址见),实现DS18B20检测的温度的实时上传到onenet云平台。今天内容如下:                                           本编内容如下:                                ...

  • STC89C52RC串口通信波特率115200实现方法

    2024-06-20

    介绍过串口波特率的发生器只能由定时器T1或者T2产生,一般默认采用T1作为波特率发生器,串口通信模式1下的波特率发生器必须使用定时器T1的模式2,也就是自动重装初始值模式,定时器的重载初值计算公式如下:TH1 = TL1 = 256 - 晶振值/12/2/16/波特率如果写:PCON |= 0x80;那么计算公式为             TH1 = TL1 = 256 - 晶振值/12/16/波特率单片机串口通信一般选择晶振为11.0592MHz,则可得到比较精确的波特率,误差可以达到0.00%,如果选用12MHz的晶振,则存在一定的误差,这也是工程项目实践中系统频率设置为11.0592MHz的原因。那么对...

  • STM32G030F6P6基于HAL库模拟SPI驱动1.8寸TFT LCD屏幕

    2024-06-20

    1 硬件介绍1.1 硬件模块介绍1.2 LCD端口定义定义1.3 LCD与STM32连接2 如何利用STM32G030F6P6 驱动SPI LCD显示屏    2.1*Cub配置基本工程*    2.2 *LCD液晶屏驱动程序*3 测试1 硬件介绍1.1硬件模块介绍      系统硬件主要STM32G030F6P6最小系统开发板、ST-LINK V2程序下载调试器和1.8‘ TFT LCD液晶屏,驱动芯片为ST7735。1.2LCD端口含义    SPI接口的LCD引脚有8脚,如图所示.其中GND和VCC是液晶的电源引脚,VCC接3.3V。SCL和SDA分别为SPI的时钟信号线和数据线。RES为LCD的复位信号,可以有STM32控制其复位。DC为数据/命令选择端,低电...