建立一个属于自己的AVR的RTOS(第四篇:延时服务) 第四篇:只有延时服务的协作式的内核 CooperativeMultitasking前后台系统,协作式内核系统,与占先式内核系统,有什么不同呢?记得在以前看过这样的比喻,“你(小工)在用厕所,经理在外面排第一,老板在外面排第二。如果是前后台,不管是谁,都必须按排队的次序使用厕所;如果是协作式,那... 2023-06-13 AVRRTOS延时服务协作式内核文章单片机AVR单片机
建立一个属于自己的AVR的RTOS(第五篇: 内核) 第五篇:完善的协作式的内核现在为上面的协作式内核添加一些OS中所必须的服务:1挂起和重新运行任务2信号量(在必要时候,可以扩展成邮箱和信息队列)3延时#include#include#includeunsignedcharStack[400];registerunsignedcharOSRdyTblasm("r2")... 2023-06-13 AVRRTOS协作式内核文章单片机AVR单片机
建立一个属于自己的AVR的RTOS(第六篇:调度法) 第六篇:时间片轮番调度法的内核 时间片轮调法是非常有趣的。本篇中的例子,建立了3个任务,任务没有优先级,在时间中断的调度下,每个任务都轮流运行相同的时间。如果在内核中没有加入其它服务,感觉上就好像是有三个大循环在同时运行。本例只是提供了一个用时间中断进... 2023-06-13 AVRRTOS时间片轮番调度法内核文章单片机AVR单片机
建立一个属于自己的AVR的RTOS(第七篇:占先式内核) 第七篇:占先式内核(只带延时服务)当大家理解时间片轮番调度法的任务调度方式后,占先式的内核的原理,已经伸手可及了。先想想,占先式内核是在什么地方实现任务调度的呢?对了,它在可以在任务中进行调度,这个在协作式的内核中已经做到了;同时,它也可以在中断结束后进行调度,这个问题,... 2023-06-13 AVRRTOS占先式内核延时服务文章单片机AVR单片机
建立一个属于自己的AVR的RTOS(第八篇:完善的服务) 第八篇:占先式内核(完善的服务)如果将前面所提到的占先式内核和协作式内核组合在一起,很容易就可以得到一个功能较为完善的占先式内核,它的功能有:1,挂起和恢复任务2,任务延时3,信号量(包括共享型和独占型)另外,在本例中,在各个任务中加入了从串口发送任务状态的功能。#includ... 2023-06-13 AVRRTOS占先式内核文章单片机AVR单片机
基于AVR单片机的高压防护系统的研究 目前,我国铁路上运行的电力机车所使用的电源,是接触网提供的25kV单相交流电。在电气化铁路区段运行和整备作业的机车,经常需要作业人员通过人 孔盖登上车顶,对机车进行检查维修工作。通常在上车顶工作前,作业人员应当按照登顶作业程序,在地面对作业网断电,再打开车顶人孔盖登顶... 2023-06-13 AVR高压防护系统AVR-GCC文章单片机AVR单片机
AVR中断应用设计要点 A.中断设计注意点:1.具备Bootloader功能的AVR,其中断向量区可以在Flash程序存储器空间最低位置和Bootloader区的头部来回迁移,这主要用于配合Bootloader程序的应用。如果不使用Bootloader功能,一般不要中断向量区进行迁移。2.Flash较小的AVR芯片,其一个中断向量占据1个字的空间... 2023-06-13 AVR中断文章单片机AVR单片机
AVR使用中应注意的一些问题 AVR与传统类型的单片机相比,除了必须能实现原来的一些基本的功能,其在结构体系、功能部件、性能和可靠性等多方面有很大的提高和改善。但使用更好的器件只是为设计实现一个好的系统创造了一个好的基础和可能性,如果还采用和沿袭以前传统的硬件和软件设计思想和方法的话,是不... 2023-06-13 AVR单片机嵌入式文章AVR单片机
气动泵流量控制系统的设计 近年来,随着计算机进入控制领域,以及新型的电力电子功率元器件的不断出现,使采用全控制开关功率元件进行脉宽调制(pulse width modulation,简称PWM)的控制方式得到了广泛的应用。气体流量控制系统的设计本系统以AVR系列的atmega32单片机为核心,通过设置atmega32的PWM控制寄存器... 2023-06-13 气动泵流量控制系统AVRPID控制文章课设毕设控制类
AVR单片机IAR AVR C语言中断编程 一、AVRmega16中断向量表向量号程序地址中断源描述IAR AVR中的定义1000RESET外部引脚电平引发的复位,上电复位,掉电检测复位,看门狗复位,以及JTAG AVR 复位RESET_vect2002INT0外部中断请求0INT0_vect3004INT1外部中断请求1INT1_vect4006TIMER2 COMP定时器/计数 2 比较匹配TIM... 2023-06-13 AVRIARC语言中断文章基础课C语言基础
define宏定义和const常量定义之间的区别 define部分:宏不仅可以用来代替常数值,还可以用来代替表达式,甚至是代码段。(宏的功能很强大,但也容易出错,所以其利弊大小颇有争议。)宏的语法为:#define 宏名称 宏值注意,宏定义不是C或C++严格意义上的语句,所以其行末不用加分号结束。作为一种建议和一种广大程序员共... 2023-06-13 AVR开发环境define宏定义const文章基础课C语言基础
AVR Stduio安装与使用 从光盘中找到AVR Stduio安装文件,或者从网上下载AVR Stduio 4.13版,该软件是免费软件,可以直接到AVR的官方网站上下载。双击安装文件,出现如下画面,接着出现如下画面然后出现如下画面,点击“NEXT“出现如下画面,选择“I accept…”,点击“NEXT&r... 2023-06-13 AVRStudio软件安装文章软件开发开发环境
畅学AVR多功能实验箱JTAG在线仿真 1)首先设置熔丝位,打开JTAG功能,如下图。使用USB ISP下载器写入熔丝。2)硬件连接(a)10芯线一端接核心板的JTAG口(b)10芯线另一端接仿真器JTAG(c)JTAG串口接串口线,串口线的另一头接电脑。(d)打开电源开关,接着下面的操作3)仿真调试我们用 AVR Studio 仿真时,用到的是 .elf 文件。点击上图... 2023-06-13 JTAG仿真AVRStudio文章软件开发
AVR多功能实验箱DS1302时钟实验源码资源 /*******************************************************************************************************************程序功能:DS1302时钟实验开发环境:WINAVR/GCC20100110硬件环境:eeskill多功能开发学习板/实验箱(2017版):ATMEGA16,12... 2023-06-13 DS1302时钟实验AVR单片机文章软件开发程序设计
JTAG仿真器常见问题总结 一、 出现下面提示时,通常是熔丝位没有打开JTAG 注意在使用JTAG之前,请先使用USBASP将下面的JTAG位打开,设置为0 1. 检查晶振不是插好了2. 检查芯片有没有锁死 一、 出现下面提示时 1. 请核对你的设备管理器中JTAG的com口是不是在com4之内。如果com口不在com4之内,修改... 2023-06-13 JTAG仿真AVRStudio升级文章软件开发开发环境
AVR单片机SPI通讯实例程序 本例用两MEGA8515实现,连接为: MISO----MISO MOSI----MOSI SCK ----SCK /SS ----/SS 将要发送的数据加载到发送缓冲区的函数fill_tx_buffer和从接收缓冲区读出数据的函数read_rx_buffer未给出,根据各自需求请自己完成。#define SPI_RX_BUFFER_SIZE 10#define SPI_RX_BUF... 2023-06-13 AVRSPI单片机实例通讯文章AVR单片机
AVR单片机I²C总线实验 /*AVR单片机I2C总线实验。1、用24C02记录CPU启动次数,并在PB口上显示出来。2、内部1 M晶振,程序采用单任务方式,软件延时。3、进行此实验请插上JP1的所有8个短路块,JP7(LED_EN)/PC0/PC1短路块。4、通过此实验,可以I2C总线操作有个初步认识。*/#include "iom16v.h"extern uns... 2023-06-13 AVR单片机实验总线文章AVR单片机
AVR内部看门口狗实验 /*实验十二:AVR内部看门口实验。1、看门口实验。在主程序中周期喂狗,通过按下按键让程序无限循环,从而启动看门狗。2、内部1 M晶振,程序采用单任务方式,软件延时。3、进行此实验请插上JP1、JP3的所有8个短路块,JP7(LED_EN)短路块。4、通过此实验可了解看门狗的设置及看门狗的喂... 2023-06-13 AVR实验程序文章单片机AVR单片机
UART串口通信程序 /*UART接口实险。1、串口以查询方式接收数据,并分别将数据显示的PB口和返回。2、内部1 M晶振,程序采用单任务方式,软件延时。3、进行此实验请插上JP1的所有8个短路块,JP7(LED_EN)短路块。4、通过此实验,可以对串口通信有个初步认识。*/#include "iom16v.h"/*串口初始化函数*... 2023-06-13 AVR串口通信程序文章单片机AVR单片机
AVR内部EEPROM实验 /*片内EEPROM读写实险。1、用内部EEPROM记录CPU启动次数,并在PB口上显示出来。2、内部1 M晶振,程序采用单任务方式,软件延时。3、进行此实验请插上JP1的所有8个短路块,JP7(LED_EN)短路块。4、通过此实验,可以对对内部EEPROM有个初步认识,了解EEPROM函数的操作。5、可过复位键让... 2023-06-13 AVREEPROM实验文章单片机AVR单片机
AVR单片机驱动NOKIA3310的示例程序 #include #include #include void main(void) { PORTB&=209; DDRB|=46; //设置单片机的4个LCD引脚输出0 while... 2023-06-13 AVR单片机程序文章AVR单片机
最精间的PT2262解码程序 我看过很多PT2262软件解码程序,都是用定时器测量脉冲宽度。占用系统太多资源。我自己编写的程序不用定时器,不用中断,代码最少。发射端为PT22623.3M的电阻接收端为M8内部1MRC振荡。解码成功后输出D口显示。编译软件为ICCAVR。(原文件名:2272.JPG)#include#includevoiddelay_... 2023-06-13 AVRPT2262解码程序文章单片机AVR单片机
AVR单片机实现电子时钟设计 #include #include #include #include #include #include #include #include #define uchar unsigned char#def... 2023-06-13 AVR单片机电子时钟设计文章AVR单片机
AVR单片机读卡器程序设计 #include #include #define uchar unsigned char#define uint unsigned int//**********定义全局变量*******************////查表0 1 2 3 4 5 6 7 8 9 E F P OF... 2023-06-13 AVR单片机读卡器程序文章AVR单片机
三极管的饱和状态讨论 1:当我们调节可调电阻,R1,使R1=4.3K时,通过欧姆定律我们可以计算得到,Ib=(5-0.7)/4.3K=1mA,那我们就可以计算出IC=Hfe*Ib=10mA,假如这个时候我调节R3,使R3=500欧姆,通过计算我们可以得到Vc=5-(10mA*0.5K)=0V,这个时候我们来看三极管三个极的电压,Vb=0.7,Vc=0,Ve=0,2:当我们调节可... 2023-06-13 闸门ATMEGA16AVR文章基础课电子技术基础