当前位置: 首页 > news >正文

wordpress做淘客网站槐荫区网站建设

wordpress做淘客网站,槐荫区网站建设,wordpress 虚拟主,英文网站建设设计前言 #xff08;1#xff09; 首先#xff0c;我们需要知道TM4C123是M4的内核。对于绝大多数人而言#xff0c;入门都是学习STM32F103#xff0c;这款芯片是采用的M3的内核。所以想必各位对M3内核还是有一定的了解。M4内核就是M3内核的升级版本#xff0c;他继承了M3的的…前言 1 首先我们需要知道TM4C123是M4的内核。对于绝大多数人而言入门都是学习STM32F103这款芯片是采用的M3的内核。所以想必各位对M3内核还是有一定的了解。M4内核就是M3内核的升级版本他继承了M3的的所有功能同时还增加和增强了如下功能 1 增加了高精度 MAC,使得在 做算法计算时的性能更高 2增加了浮点单元 FPU 3增加了具有 SIMD 功能的 DSP 指令 2这几个新增加的功能让M4内核的芯片有很强大的浮点运算功能让M4的芯片多用于需要复杂的数字运算功能的场景。 开发环境搭建 keil工程环境搭建 1首先搜索引擎搜索keil进入keil官网搜索pack然后按CtrlF搜索TEXAS因为TI的英文名前缀是这个。 2将pack文件导入到keil中。打开keil注意任意工程都行就算没有工程是空白的也行。点击左上角的PACK Installer 3进入PACK Installer之后关闭弹窗——点击左上角的File——点击Import 4找到存放PACK的路径然后打开他即可。之后你需要等待一段时间右下角会有一个进度条因为安装包是在国外网站所以需要等待比较长的时间。 注意TM4C123的pack名字不是如下图因为我懒得重新演示所以复制的我RA2E1 开发板教程截图。 5之后keil工程里面会弹出一个弹框点击确定即可。 6之后按照下图确认是否pack已经安装 程序下载 1连接好下载器设置下载器 2设置ROM的运算单元的起始位置和大小。以及设置编程算法 3编译下载 TM4C123前缀带ROM的函数 详情请看TM4C123的ROM函数和非ROM函数区别 函数介绍 ROM_FPUEnable(); 因为在M4的内核中可以有专门的浮点运算单元。所以当我们需要在程序中使用浮点运算的时候需要调用ROM_FPUEnable()函数。 /****** 函数声明 ******/ //这个存放在ROM void ROM_FPUEnable(void); //这个是存放在flash void FPUEnable(void);ROM_FPULazyStackingEnable(); 当处理中断时这个函数允许浮点寄存器s0-s15的延迟堆叠。当lazy stacking被启用时堆栈上为浮点上下文保留空间但不保存浮点状态。如果在中断上下文中执行一个浮点指令那么该浮点上下文中首先被保存到堆栈预留的空间中。在中断处理程序完成时只有保存了(作为执行浮点指令的结果)的浮点上下文才会被恢复。 1这提供了快速中断响应(因为在中断入口时不会保存浮点状态)和2在中断处理程序中使用浮点的能力(因为如果使用浮点指令会保存浮点状态)之间的折衷。 /****** 函数声明 ******/ //这个存放在ROM void ROM_FPULazyStackingEnable(void); //这个是存放在flash void FPULazyStackingEnable(void);ROM_SysCtlClockSet() 1这个函数用于设置设备时钟。一般采用ROM_SysCtlClockSet(SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_XTAL_16MHZ |SYSCTL_OSC_MAIN);设置系统时钟为80MHZ。 2如下为 TM4C123 的时钟树。很多人对于时钟树就头痛起始没有必要害怕我们现在只需要看系统时钟。因为它最重要其他的时钟信号要用到的时候再去看。 1咱们一个一个的看ROM_SysCtlClockSet中传入的参数。SYSCTL_USE_PLL | SYSCTL_OSC_MAIN这一段话表示让PLL作为系统时钟的时钟源。 2SYSCTL_XTAL_16MHZ表示主振荡器为16MHZ这个需要更具你的外部晶振频率来设定。因为本人的开发板外部晶振是16MHZ所以选择SYSCTL_XTAL_16MHZ。 3SYSCTL_SYSDIV_2_5进行再次分频的。因为PLL输出400MHZ频率返回进行了一次2分频之后是200MHZ。因为TM4C123最大频率为80MHZ所以再次分频数必须大于2.5。我们这里选择分频2.5让TM4C123以最大频率运转。 /****** 系统时钟设置为80MHZ ******/ ROM_SysCtlClockSet(SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_XTAL_16MHZ |SYSCTL_OSC_MAIN);//配置系统时钟系统时钟频率400M/2/2.580M/****** 函数声明 ******/ //这个存放在ROM void ROM_SysCtlClockSet(uint32_t ui32Config); //这个存放在flash void SysCtlClockSet(uint32_t ui32Config);ROM_SysCtlPeripheralEnable 1经过上面的初始之后我们现在可以正常进入LED程序编写了。系统上电的时候IO口时钟是默认关闭的作用是降低功耗。所以首先我们需要打开IO口时钟因为我的开发板LED是在PF4。所以我需要打开PF这一组IO的时钟。 /****** 函数声明 ******/ //这个存放在ROM void ROM_SysCtlPeripheralEnable(uint32_t ui32Peripheral); //这个存放在flash void SysCtlPeripheralEnable(uint32_t ui32Peripheral);/****** 函数介绍 ******/ /* 作用 使能IO* 传入参数 * ui32Peripheral 参数必须仅为下列值之一SYSCTL_PERIPH_ADC0, SYSCTL_PERIPH_ADC1, SYSCTL_PERIPH_CAN0, SYSCTL_PERIPH_CAN1, SYSCTL_PERIPH_CCM0, SYSCTL_PERIPH_COMP0, SYSCTL_PERIPH_EEPROM0, SYSCTL_PERIPH_EMAC, SYSCTL_PERIPH_EPHY, SYSCTL_PERIPH_EPI0, SYSCTL_PERIPH_GPIOA, SYSCTL_PERIPH_GPIOB, SYSCTL_PERIPH_GPIOC, SYSCTL_PERIPH_GPIOD, SYSCTL_PERIPH_GPIOE, SYSCTL_PERIPH_GPIOF, SYSCTL_PERIPH_GPIOG, SYSCTL_PERIPH_GPIOH, SYSCTL_PERIPH_GPIOJ, SYSCTL_PERIPH_GPIOK, SYSCTL_PERIPH_GPIOL, SYSCTL_PERIPH_GPIOM, SYSCTL_PERIPH_GPION, SYSCTL_PERIPH_GPIOP, SYSCTL_PERIPH_GPIOQ, SYSCTL_PERIPH_GPIOR, SYSCTL_PERIPH_GPIOS, SYSCTL_PERIPH_GPIOT, SYSCTL_PERIPH_HIBERNATE, SYSCTL_PERIPH_I2C0, SYSCTL_PERIPH_I2C1, SYSCTL_PERIPH_I2C2, SYSCTL_PERIPH_I2C3, SYSCTL_PERIPH_I2C4, SYSCTL_PERIPH_I2C5, SYSCTL_PERIPH_I2C6, SYSCTL_PERIPH_I2C7, SYSCTL_PERIPH_I2C8, SYSCTL_PERIPH_I2C9, SYSCTL_PERIPH_LCD0, SYSCTL_PERIPH_ONEWIRE0, SYSCTL_PERIPH_PWM0, SYSCTL_PERIPH_PWM1, SYSCTL_PERIPH_QEI0, SYSCTL_PERIPH_QEI1, SYSCTL_PERIPH_SSI0, SYSCTL_PERIPH_SSI1, SYSCTL_PERIPH_SSI2, SYSCTL_PERIPH_SSI3, SYSCTL_PERIPH_TIMER0, SYSCTL_PERIPH_TIMER1, SYSCTL_PERIPH_TIMER2, SYSCTL_PERIPH_TIMER3, SYSCTL_PERIPH_TIMER4, SYSCTL_PERIPH_TIMER5, SYSCTL_PERIPH_TIMER6, SYSCTL_PERIPH_TIMER7, SYSCTL_PERIPH_UART0, SYSCTL_PERIPH_UART1, SYSCTL_PERIPH_UART2, SYSCTL_PERIPH_UART3, SYSCTL_PERIPH_UART4, SYSCTL_PERIPH_UART5, SYSCTL_PERIPH_UART6, SYSCTL_PERIPH_UART7, SYSCTL_PERIPH_UDMA, SYSCTL_PERIPH_USB0, SYSCTL_PERIPH_WDOG0, SYSCTL_PERIPH_WDOG1, SYSCTL_PERIPH_WTIMER0, SYSCTL_PERIPH_WTIMER1, SYSCTL_PERIPH_WTIMER2, SYSCTL_PERIPH_WTIMER3, SYSCTL_PERIPH_WTIMER4, or SYSCTL_PERIPH_WTIMER5* 返回参数 无 */ROM_GPIOPinTypeGPIOOutput() 因为我们想要点亮LED那么就需要将IO口设置为输出引脚。使用这个函数可以将IO口设置为输出。 /****** 函数声明 ******/ //这个存放在ROM void ROM_GPIOPinTypeGPIOOutput(uint32_t ui32Port, uint8_t ui8Pins); //这个存放在flash void GPIOPinTypeGPIOOutput(uint32_t ui32Port, uint8_t ui8Pins);/****** 函数介绍 ******/ /* 作用 将IO口设置为输出* 传入参数 * ui32Port GPIO_PORTx_BASEx可为A,B,C,D,E,F,G,H,J,K* ui8Pins : GPIO_PIN_xx可为1,2,3,4,5,6,7*返回值 无 */ROM_GPIOPinWrite() 我们配置完IO之后需要需要设置它的输出引脚电平。因为我的LED是共阳所以输出低电平才是点亮LED。 /****** 函数声明 ******/ //这个存放在ROM void ROM_GPIOPinWrite(uint32_t ui32Port, uint8_t ui8Pins, uint8_t ui8Val); //这个存放在flash void GPIOPinWrite(uint32_t ui32Port, uint8_t ui8Pins, uint8_t ui8Val);/****** 函数介绍 ******/ /* 作用 设置IO口电平* 传入参数 * ui32Port GPIO_PORTx_BASEx可为A,B,C,D,E,F,G,H,J,K* ui8Pins : GPIO_PIN_xx可为1,2,3,4,5,6,7* ui8Val GPIO_PIN_x表示设置为高电平GPIO_PIN_x表示设置为低电平*返回值 无 */代码实操 #include stdio.h #include stdint.h #include stdbool.h #include hw_memmap.h #include hw_types.h #include hw_gpio.h #include debug.h #include fpu.h #include gpio.h #include pin_map.h #include rom.h #include sysctl.h #include uart.h #include uartstdio.h#ifdef DEBUG void __error__(char *pcFilename, uint32_t ui32Line) { } #endifint main(void) {ROM_FPUEnable();//使能浮点单元。这个函数必须在执行任何硬件浮点运算之前被调用;如果不这样做将导致NOCP使用错误。ROM_FPULazyStackingEnable();//浮点延迟堆栈,减少中断响应延迟 ROM_SysCtlClockSet(SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_XTAL_16MHZ |SYSCTL_OSC_MAIN);//配置系统时钟系统时钟频率400M/2/2.580MROM_SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); //使能GPIOF外设 ROM_GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE, GPIO_PIN_4);// LEDROM_GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_4, GPIO_PIN_4);//置高位熄灭while(1){GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_5, !GPIO_PIN_5);//置低位点亮SysCtlDelay(SysCtlClockGet() / 10); //延时0.1s为什么先不用管后面会讲解GPIOPinWrite(GPIO_PORTF_BASE, GPIO_PIN_5, GPIO_PIN_5);//置高位熄灭SysCtlDelay(SysCtlClockGet() / 10);//延时0.1s为什么先不用管后面会讲解 }
http://www.pierceye.com/news/848290/

相关文章:

  • 网站开发从何学起公司网站在哪里做
  • 无锡网站制作哪家有名金华安全网站建设怎么收费
  • dw做响应式网站重庆黄埔建设集团网站
  • 做系统那个网站好wordpress添加返回顶部
  • 站网站推广汕头网站建设和运营
  • 免费注册网页的网站中原彼得堡航空学院网站的建设
  • 青岛高端网站制作公司可做笔记的阅读网站
  • 区网站建设有域名后怎样做网站
  • 加强网站基础建设推广app的平台
  • 全球访问量最大的网站排名中国贸易公司100强
  • 衡水市网站制作有没有专门做儿童房的网站
  • 网站建设如何做报价网络工程师考试时间
  • wordpress建公司网站ftp转换wordpress
  • 网站开发 公司简介网站开发工具有哪些
  • 阿里云备案 网站备案域名购买河南洛阳网络公司
  • 工会网站建设请示怎么做属于自己的售卡网站
  • 怎么用ftp工具上传网站源码极速网站建设定制多少钱
  • 文山网站建设哪家好网站开发需要会的东西
  • ie9网站后台编辑器网络公司办公室图片
  • 山西格泰网站建设空间商网站
  • 做网站建设哪家便宜python 做电商网站
  • 网站项目ppt怎么做网络销售推广平台
  • 网站推广营销策略一级a做爰片免费网站 小说
  • 音乐网站排名室内设计基础知识点
  • 毕业设计音乐网站开发背景网站内容怎么修改
  • 风琴折叠图片效果网站宁波seo托管公司
  • app定制研发app开发seozou是什么意思
  • 手机在线制作表白网站集团网站建设价格
  • 手工蛋糕网站开发报告网站集群建设实施方案
  • 定制小程序网站开发公司如何做网站详细步骤