本节在学习GPIO输入之前,我们首先学习传感器电路的硬件知识,其次对C语言中的一些基本知识进行复习,最后编写GPIO输入的代码。 传感器电路的硬件知识 下图中为传感器部分的原理图: 图中将传感器接在P1连接座,通过N1传感器输出模拟电压信号IN+,将IN+信号输入到电压比较器LM393与可调电阻产生的N-信号进行比较,比较后输出数字信号DO,如果DO信号为低,则LED2导通点亮,如果DO信号为高,则LED2灭。LED2默认状态下由于R5电阻的上拉作用使其无法导通,默认为熄灭状态。 C语言部分的复习 由于后续的部分会用到C语言相关的知识,以下做一些C语言部分的复习: 数据类型 在ST...

  RGE9SaKkXr6k   2023年12月12日   20   0   0 STM学习笔记STM32GPIO输入

GPIO的内部结构: 在STM32中,所有的外设都是挂载在APB2外设总线上的,GPIO内包含了寄存器和驱动器,内核通过APB2总线对寄存器进行读写,寄存器的每一位对应每一个引脚。驱动器是用来增强GPIO驱动能力的 GPIO位的内部结构: 在下结构图中,信号从右边的I/0引脚输入,通过内部的上拉或下拉开关进行到TTL肖特基触发器处,模拟量信号在TTL肖特基触发器前输入到模拟输入端口处。电压经过TTL肖特基进行整形处理(施密特触发电路是一种波形整形电路,当任何波形的信号进入电路时,输出在正、负饱和之间跳动,产生方波或脉波输出。)后送到服用功能输入或者输入信号寄存器中作为数字信号输入。 输...

1.使能外设时钟 输入:RCC_APB2PeriphClockCmd函数,查看函数定义,根据函数定义填写参数: RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); 2.配置端口模式 输入函数GPIO_Init,跳转到函数定义,查看函数定义得知函数体的第二个参数是结构体,先定义结构体并且填写结构体的各个参数,然后填写函数参数: GPIO_InitTypeDefGPIO_InitStructure;//定义结构体 GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; //结构体参数 GPIO...

  RGE9SaKkXr6k   2023年12月07日   21   0   0 STM32点灯stm32STM32学习笔记

跑马灯仿真指导: 跑马灯keil程序: include<REGX52.H> include<intrins.H>//延时函数需要添加的头文件 voidDelay300ms() //@11.0592MHz延时函数 { unsignedchari,j,k; _nop_(); i=3; j=26; k=223; do { do { while(--k); }while(--j); }while(--i); } intmain() { inti=0; while(1) { for(i=0;i<8;i) { ...

首先在proteus中点击P放置器件,输入DIPSW来放置1个插件形式的按键,将按键连接在P3的IO口上: 编写程序,通过读取P3的值,赋给P2,来获取按键的输入效果: include<REGX52.H> intmain() { inti=0; while(1) { P2_0=P3_0; } return0; 通过按键来控制来控制P1^0口的LED亮灭,增加了消抖和松手检测: 程序示例: include<REGX52.H> sbitLED=P1^0; sbitKEY=P1^1; voidDelay10ms() //@12.000M...

找到单片机中的外部中断引脚位置,查看规格书得知,外部中断引脚采用下降沿触发或低电平触发,在这里我们接两个按键,使用按键按下产生低电平触发外部中断的方式: 在P2.1、P2.2处接两个LED灯来演示进入外部中断后进行操作LED灯的效果: 如何使用外部中断呢?百度查找STC89C51系列的中断例程: 进行简单修改即得到了我们想要的程序框架: include<REGX52.H> sbitLED1=P2^1; sbitLED2=P2^2; voidmain() { IT0=1;//设置中断0的中断类型,1:下降沿0:低电平 EX0=1;//使能中断0中断 IT1=1;//设置中断...

1.首先查看规格书和芯片引脚标识确定串口的RX/TX引脚分别是P3.0和P3.1: 点击虚拟仪器中的虚拟示波器,放置在桌面上: 将虚拟示波器的RX接到单片机的TX,将虚拟示波器的TX接到单片机的RX: 接下来打开keil编写串口收发的程序: 在stc-isp的范例程序中,找到STC89Cxx,找到串口的C语言范例,复制到keil中,做进一步的修改: 在了解了串口关于硬件的知识后,我们应该熟悉与串口相关的寄存器,软件方面主要是配置好寄存器: 当串口需要接收数据时,REN需要配置为1: 发送数据结束时硬件自动将TI置1,向主机请求中断,在中断中我们必须使用软件将TI置为0:换句话说...

  RGE9SaKkXr6k   2023年12月06日   16   0   0 proteus仿真51单片机串口波特率

STM简介 STM32是ST公司基于ARMCortex-M内核开发的32位微控制器,本次课程采用的STM32F1系列,ARM公司设计ARM内核,半导体厂商完善内核周边电路并产生芯片 STM32F103C8T6参数 RAM:20K指运行内存,实际存储介质是SRAM ROM:64K指程序存储器,实际存储介质是Flash内存 供电:2.0-3.6V标准3.3V 封装:LQFP48 最小系统电路包括: 供电 时钟 复位 启动配置 下载端口 启动配置 在STM32F10xxx里,可以通过BOOT[1:0]引脚选择三种不同启动模式 BOOT1:XBOOT0:0flash启动 BOO...

  RGE9SaKkXr6k   2023年12月06日   13   0   0 stm32STM32学习笔记STM32单片机

新建基于标准库的工程: 一、keil5--Project--NEWvisionproject--选择文件路径--选择设备STM32F103C8,完成项目创建。 二、添加STM32的启动、内核文件、头文件、时钟配置文件: 打开路径:STM32\STM32入门教程资料\固件库\固件库\STM32F10x_StdPeriph_Lib_V3.5.0\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm,包含以下文件: 将这些启动文件复制到项目文件夹中,在项目文件夹中创建一个...

在keil中新建项目: 选择工程保存的路径: 选择单片机的型号和文件包为AT89C52(基本同STC89C52兼容): 点击创建.C文件: 填写文件名和文件类型: 至此,创建程序文件成功: 添加头文件,添加main函数,编译确认无报错,即可以开始编写程序: 选中“目标的选项按钮”,选择output,选择creathexfile选项,在编译时即可以创建hex格式的文件: 回到proteus软件中,在主界面双击单片机主芯片,选择programfile: 导入program文件后,可以看到重新运行时警告信息已经消失: 写一个测试程序:P0=0x55; 编译运行看看...

安装proteus: 手动卸载本机安装的其他版本proteus一并删除安装文件。 点击p8.11.SP1安装包,默认安装所需的运行库,默认点击下一步安装,不用理会许可证文件(之后可以替换)。 点击下一步,之后会弹出LabcenterLiceenceManager1.11对话框,选择BrowseForKeyFile,选择安装文件中的许可证文件,然后点击Install,导入证书后点击Done。 点击Custom,使用自定义的安装方式 将第一个安装路径中的文件路径复制到ProgramDataPath的路径中(程序数据路径和安装包路径放在同一个位置)。(两个目录位置不一致可能会发生闪退。) &nbs...

  RGE9SaKkXr6k   2023年11月30日   11   0   0 安装包闪退Proteus 8 Profession

新建工程并指定存储路径: 使用默认模板创建原理图,并且不需要创建PCB的仿真,选择【没有固件项目】点击下一步,完成工程的创建: 进入工程界面后,点击P放置器件: 输入89C51,选择89C51单片机,在绘图界面单击,将proteus放在图纸上: 接下来完成晶振、复位、EA启动选择,上拉电阻等最小系统部分的绘制: 首先点击P放置器件,搜索Crystal,选择晶振,放在图纸中,使用空格键旋转放置好器件(设置空格键为快捷键旋转可以自行百度): 点击P放置器件,输入cap自动搜索到无极性电容,放置电容: 双击电容,更改电容参数为30pF的容值: Ctrl+C复制电容并连接好晶振电路...

什么是定时器/计数器?--既可以定时,也能计数的一种单片机内部资源,主要用于软件计时和软件延时等场合。但同一时刻只能使用其中一种功能。 定时器的核心功能简单一句话说就是“启动定时器后,每个机器周期到来,初值寄存器自动加1,直到计满溢出”。 定时器的工作流程: 1.启动信号 2.预设机器周期--以12MHZ为例,单片机时钟信号÷12=1MHZ,等于一个机器周期是1us 3.按预设初值寄存器来启动计算;TH0=高八位,TL0=低八位;初值都为00H; 4.满足条件自动加1;TL0低位开始+1,+至11111111(255);从高位继续+1,+至1111111111111111;继续+1则溢出; 5...

  RGE9SaKkXr6k   2023年11月19日   18   0   0 初值寄存器服务程序

一、信息化知识 考情: 选择题,8-10分 本章目录: 1.信息与信息化 2.国家信息化战略和规划 3.电子政务 4.企业信息化和两化深度融合 5.商业智能 6.新一代信息技术及应用 1.1.1信息与信息化 1.信息的基本概念 信息是客观事物状态和运动特征的一种普遍新手,客观世界中大量地存在、产生和传递着以不同形式表示出来的各种各样的信息 ①本体论信息:事物的运动状态和状态变化方式的自我表述 ②认识论信息:主体对于该事物的运动状态和状态变化方式的具体描述,包括对于它的状态和方式的形式、含义和价值的描述。(控制论创始人是维纳,信息论之父是香农) 2.信息传输模型的6个要素 1.信源:产生信息...

  RGE9SaKkXr6k   2023年11月02日   37   0   0 企业信息化crm数据
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~