共 29 篇文章
显示摘要每页显示  条
emwin+stm32f103zet6移植教程。(2)chipselect根据实际选择,会影响到访问LCD控制寄存器地址与数据寄存器地址,寄存器地址如下。LCD_CLR_CS();void LCD_X_8080_16_Init(void) {void LCD_X_8080_16_Init (void);void LCD_X_8080_16_WriteM01_16(INT16U * pData, intNumWords);void LCD_X_8080_16_WriteM00_16(INT16U * pData, intNumWords);...
对于FatFs文件系统的介绍和具体移植过程参考"基于串行Flash的FatFs文件系统",这里就不做过多介绍,重点放在SD卡与FatFs接口函数编写上。对于SD卡,直接调用SD_Init函数实现对SD卡初始化,如果函数返回SD_OK说明SD卡正确插入,并且控制器可以与之正常通信。=SD_OK)SD_WriteMultiBlocks函数是向SD卡写入多个块数据,它有四个形参,分...
随机数产生srand和rand 的使用 srand函数是随机数发生器的初始化函数。#include<stdlib.h>/*用到了srand函数,所以要有这个头文件*/#include<stdio.h>#define MAX 10 int main(void){int number[MAX] = {0};int i;unsigned int seed;scanf("%d",&seed);/*手动输入种子*/srand(seed);for(i = 0; i < MAX; i++){nu...
我们FSMC控制SRAM为例来说明:当要访问宽度为8位的数据时,使用行地址线指出地址,然后把UB#(FSMC_NBL0)设置为低电平,I/O8-I/O15(FSMC_D8到FSMC_D15)会对应输出该地址的高8位,I/O0-I/O7的信号无效(或者把LB#(FSMC_NBL1)设置为低电平,I/O0-I/O7(FSMC_D0到FSMC_D7)会对应输出该地址的低8位,I/O8-I/O15的信号无效。刚刚前面提到的FSM...
宏OS_CFG_ISR_POST_DEFERRED_EN: 0:UCOSIII使用关中断的方式来保护临界段代码 1:采用给调度器上锁的方式来保护临界段代码。UCOSIII中的任务是一个无限循环并且还是一个抢占式内核,为了使高优先级的任务不至于独占CPU,可以给其他优先级较低任务获取CPU使用权的机会,UCOSIII中除空闲任务外的所有任务必须在合适的位置调用系统提供的延时...
本章,我们有2个APP程序,一个为FLASH的APP,程序在FLASH中运行,另外一个位SRAM的APP,程序运行在SRAM中,图48.1.2虽然是针对FLASH APP来说的,但是在。iap_load_app函数,则用于跳转到APP程序运行,其参数appxaddr为APP程序的起始地址,程序先判断栈顶地址是否合法,在得到合法的栈顶地址后,通过MSR_MSP函数(该函数在sys.c文件)设置栈顶地...
循环冗余校验(CRC)算法入门引导写给嵌入式程序员的循环冗余校验(CRC)算法入门引导前言。[cpp] view plain copy #define POLY 0x1021 /** * Calculating CRC-16 in ''C'' * @para addr, start of data * @para num, length of data * @para crc, incoming CRC */ uint16_t crc16(unsigned char *addr, int nu...
UCOSIII信号量,互斥信号量。OSSemCreate ((OS_SEM*)&MY_SEM, (CPU_CHAR* )"MY_SEM", (OS_SEM_CTR)1, (OS_ERR* )&err);OS_SEM_CTR OSSemPend (OS_SEM *p_sem, OS_TICK timeout, OS_OPT opt, CPU_TS *p_ts, OS_ERR *p_err)OS_SEM_CTR O...
void OSTaskSuspend (OS_TCB *p_tcb, OS_ERR *p_err)OS_ERR_SCHED_LOCKED //you can''t suspend the current task is the scheduler is locked//(ISR中断服务函数)OS_ERR_TASK_SUSPEND_ISR //if you called this function from an ISROS_ERR_TASK_SUSPEND_IDLE //if you attempted to suspend the idle task which is not allowed.OS_E...
UCOSIII 任务管理III.本文内容简介: 一共分为三部分: 第一部分:任务调度,讲述了任务级和中断级的任务调度和调度点 第二部分:任务切换 第三部分:系统初始化部分。8、任务改变自身的优先级或者其他任务的优先级。OS_ERR err;//OSInit(&err)必须先于其他所有函数执行OS_CRITICAL_ENTER(); //进入临界区OSTaskCreate();OS_CRITICAL_E...
帮助 | 留言交流 | 联系我们 | 服务条款 | 下载网文摘手 | 下载手机客户端
北京六智信息技术股份有限公司 Copyright© 2005-2024 360doc.com , All Rights Reserved
京ICP证090625号 京ICP备05038915号 京网文[2016]6433-853号 京公网安备11010502030377号
返回
顶部