#include "main.h"
typedef uint32_t u32;
typedef uint16_t u16;
typedef uint8_t u8;
/*----------------------------------------------------------------------------
* SystemCoreClockConfigure: configure SystemCoreClock using HSI
*----------------------------------------------------------------------------*/
void SystemCoreClockConfigure(void)
{
RCC->CR |= ((uint32_t)RCC_CR_HSION); // Enable HSI
RCC->CR &= ~((uint32_t)RCC_CR_HSEON); // Disable HSE
while ((RCC->CR & RCC_CR_HSIRDY) == 0); // Wait for HSI Ready
RCC->CFGR = RCC_CFGR_SW_HSI; // HSI is system clock
while ((RCC->CFGR & RCC_CFGR_SWS) != RCC_CFGR_SWS_HSI); // Wait for HSI used as system clock
FLASH->ACR = FLASH_ACR_PRFTBE; // Enable Prefetch Buffer
FLASH->ACR |= FLASH_ACR_LATENCY; // Flash 1 wait state
RCC->CFGR |= RCC_CFGR_HPRE_DIV1; // HCLK = SYSCLK
RCC->CFGR |= RCC_CFGR_PPRE_DIV1; // PCLK = HCLK
RCC->CR &= ~RCC_CR_PLLON; // Disable PLL
// PLL configuration: = HSI/2 * 12 = 48 MHz
RCC->CFGR &= ~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE | RCC_CFGR_PLLMUL);
RCC->CFGR |= (RCC_CFGR_PLLSRC_HSI_DIV2 | RCC_CFGR_PLLMUL12);
RCC->CR |= RCC_CR_PLLON; // Enable PLL
while((RCC->CR & RCC_CR_PLLRDY) == 0) __NOP(); // Wait till PLL is ready
RCC->CFGR &= ~RCC_CFGR_SW; // Select PLL as system clock source
RCC->CFGR |= RCC_CFGR_SW_PLL;
while ((RCC->CFGR & RCC_CFGR_SWS) != RCC_CFGR_SWS_PLL); // Wait till PLL is system clock src
}
void delay_us(u16 us)
{
SysTick->LOAD = us*8; //设置时间
SysTick->VAL = 0x00; //清空计数器
SysTick->CTRL = 0x01; //开始倒数
while((SysTick->CTRL & 0x10000) == 0);
SysTick->CTRL=0x00; //关闭计数器
SysTick->VAL =0X00; //清空计数器
}
void delay_ms(u16 ms)
{
SysTick->LOAD = 1000*8; //设置时间为1ms
SysTick->VAL = 0x00; //清空计数器
SysTick->CTRL = 0x01; //开始倒数
while(ms)
{
while((SysTick->CTRL & 0x10000) == 0);
ms--;
}
SysTick->CTRL=0x00; //关闭计数器
SysTick->VAL =0X00; //清空计数器
}
void GPIO_test(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOC , ENABLE);
//Latch Pin
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_Init(GPIOC, &GPIO_InitStructure);
}
int main(void)
{
SystemCoreClockConfigure();
// SystemCoreClockUpdate();
USART_Config(115200);
GPIO_test();
while (1)
{
GPIO_SetBits(GPIOC,GPIO_Pin_6);
delay_ms(2000);
GPIO_ResetBits(GPIOC,GPIO_Pin_6);
delay_ms(2000);
}
}
上一篇:LCD驱动芯片——BL55072A驱动程序
下一篇:STM32F07xx单片机串口4配置
推荐阅读最新更新时间:2024-11-10 10:15
推荐帖子
- stm32 PKstm8
- STM8没有出路吗?我看到大家谈论的都是STM32的东西stm32PKstm8
- yangyi1818 stm32/stm8
- 硬件领域的公司都回招哪些类的职位?
- 请教一下大家一个做硬件领域的公司都会招些什么类型的职位?硬件领域的公司都回招哪些类的职位?电源,模拟,IC设计(FPGA/CPLD),layout,机械结构,产品工程师,。。。还有房地产的话。。。有土木工程师,项目经理。。。财务。。总监之类的职位。。
- Essen 嵌入式系统
- 出一套EKC LM3S8962板
- 出一套EKCLM3S8962,板子挺不错的。支持E金币,支持人民币,支持买前测试,买家提供测试方法,,不支持退换货,一锤子卖买,别纠结。交易方式,见贴子后面的交易地点。价格150,论坛的老基友9折,另送随机物品(可以是板子,芯片,也可以是我发的其它贴子中拆出来的各种玩意)。另外出套全功能模拟电路设计套件AnalogDiscoveryStellaris®LM3S8962评估板是一个简单通用的基于StellarisLM3S8962(ARM®Co
- strong161 淘e淘
- TMS320C6670的无线基带信号处理系统设计
- TMS320C6670的无线基带信号处理系统设计TMS320C6670的无线基带信号处理系统设计
- Jacktang DSP 与 ARM 处理器
- 经网友指点,找来LPC板块,想把温度流量传感器采集到的信息显示在液晶屏上
- 我在传感器板块发了这么一个帖子(开始我连发什么板块都不知道,觉得用到了传感器,所以应该发传感器吧)------------------------------------------------------------------------------------------我从来没搞过开发,不过想自己DIY点东西。(需要的相关知识都可以从头学)现在我有这样一个需求:两个传感器,一个是温度传感器(浸泡在水中的),一个是流量传感器(说明书上说输出方波。什么是方波?)我想把这两个传感器获得
- planningall NXP MCU
- 急,PWM
- 我需要输出6路不同相位的PWM输出,相位差为60度,不知道如何设定相位差,请各位大虾帮忙。我用的是MSP430F449。急,PWM//*******************************************************************************//MSP-FET430P140Demo-Timer_B,PWMTB1-6,UpMode,32kHzACLK////Description;Thisprogramout
- gdq 微控制器 MCU
设计资源 培训 开发板 精华推荐
- NCP512SQ33T1G 80 mA、3.3 输出电压 CMOS 低压稳压器的典型应用
- 使用 ON Semiconductor 的 CS8147 的参考设计
- 【RA】农田环境数据无线采集灌溉自律系统(基于瑞萨MCU)
- 教育玩具
- NL5441A四位辉光管时钟主板
- 电赛源码 基于MSP430luanchpad的蔬菜基地分布式无线低功耗温湿度监测系统
- 使用 ON Semiconductor 的 CAT3614 的参考设计
- LT1764AEFE-1.5 3.3 VIN 至 2.5 VOUT LDO 稳压器的典型应用
- 具有可调软启动功能的 LT1506IR-3.3 降压转换器的典型应用电路
- 使用 Analog Devices 的 ADF4001BRU 的参考设计
- 安森美半导体重磅推出超低功耗蓝牙芯片 RSL10 — 观视频答题送样片 更有丰富礼品等你拿!
- Vicor可最大限度提高AI、HPC和数据计算性能的电源解决方案
- 英飞凌家用暖通空调解决方案邀你拆盲盒
- 电子书下载|ADI 触摸屏测试解决方案
- “USB 3.1 规范及重要测试需考虑的因素”江湖令,一起在吐槽中成长
- 有奖直播|如何借助Mentor Xpedition AMS对汽车CAN总线进行仿真优化分析?
- 【看电源研讨会 抽好礼】避免常见的AC-DC设计缺陷
- 体验Cyclone V Dev Kit
- 安全的革新,全新的验证方式 下载富士通 《频谱验证解决方案 》白皮书 好礼送!
- PI带您走进物联网时代!下载资料赢好礼