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

做网站得叫什么软件wordpress页面

做网站得叫什么软件,wordpress页面,北京网站建设+知乎,淘宝做任务网站波形发生器对我的钱包不怎么友好#xff0c;手里面有stm32f103c8t6#xff0c;于是就想,放在哪儿吃灰也是吃灰#xff0c;不如做个正弦波发生器。方案 dac没怎么用过#xff0c;所以打算使用输出模拟正弦波。我们决定采用以下方案#xff1a;1.使用TIM2_CH3#xff08;PA…        波形发生器对我的钱包不怎么友好手里面有stm32f103c8t6于是就想,放在哪儿吃灰也是吃灰不如做个正弦波发生器。方案         dac没怎么用过所以打算使用输出模拟正弦波。        我们决定采用以下方案1.使用TIM2_CH3PA2输出PWM2.使用TIM4产生中断来更新占空比3.系统时钟72MHz代码        以下为完整的项目代码实现 #include stm32f10x.h #include math.h#define PI 3.14159265f #define SAMPLE_POINTS 256 // 正弦波采样点数 #define PWM_FREQ 10000 // PWM频率10kHz #define SINE_FREQ 1000 // 正弦波频率1kHzuint16_t sineWave[SAMPLE_POINTS]; // 正弦波采样值 uint8_t waveIndex 0; // 当前采样点索引// 生成正弦波查找表 void generateSineTable(void) {for(int i 0; i SAMPLE_POINTS; i) {float radian 2 * PI * i / SAMPLE_POINTS;float value 0.5f * (1 sinf(radian)); // 值域[0,1]sineWave[i] (uint16_t)(value * 999); // 映射到0-999TIM2-ARR999} }// TIM4初始化中断触发占空比更新 void TIM4_Init(void) {RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE);TIM_TimeBaseInitTypeDef TIM_TimeBaseStruct;TIM_TimeBaseStruct.TIM_Period (72000000 / (SINE_FREQ * SAMPLE_POINTS)) - 1; // 中断频率 正弦波频率×采样点数TIM_TimeBaseStruct.TIM_Prescaler 0; // 72MHz/1 72MHzTIM_TimeBaseStruct.TIM_ClockDivision TIM_CKD_DIV1;TIM_TimeBaseStruct.TIM_CounterMode TIM_CounterMode_Up;TIM_TimeBaseInit(TIM4, TIM_TimeBaseStruct);TIM_ITConfig(TIM4, TIM_IT_Update, ENABLE);TIM_Cmd(TIM4, ENABLE); }// TIM2 PWM初始化PA2输出 void TIM2_PWM_Init(void) {RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);// PA2配置为复用推挽输出GPIO_InitTypeDef GPIO_InitStruct;GPIO_InitStruct.GPIO_Pin GPIO_Pin_2;GPIO_InitStruct.GPIO_Mode GPIO_Mode_AF_PP;GPIO_InitStruct.GPIO_Speed GPIO_Speed_50MHz;GPIO_Init(GPIOA, GPIO_InitStruct);// 时基配置PWM频率TIM_TimeBaseInitTypeDef TIM_TimeBaseStruct;TIM_TimeBaseStruct.TIM_Period 999; // ARR值0-999对应占空比0-100%TIM_TimeBaseStruct.TIM_Prescaler 7200 - 1; // 72MHz/7200 10kHzTIM_TimeBaseStruct.TIM_ClockDivision 0;TIM_TimeBaseStruct.TIM_CounterMode TIM_CounterMode_Up;TIM_TimeBaseInit(TIM2, TIM_TimeBaseStruct);// PWM通道3配置PA2对应TIM2_CH3TIM_OCInitTypeDef TIM_OCStruct;TIM_OCStruct.TIM_OCMode TIM_OCMode_PWM1;TIM_OCStruct.TIM_OutputState TIM_OutputState_Enable;TIM_OCStruct.TIM_OCPolarity TIM_OCPolarity_High;TIM_OCStruct.TIM_Pulse 0; // 初始占空比TIM_OC3Init(TIM2, TIM_OCStruct);TIM_OC3PreloadConfig(TIM2, TIM_OCPreload_Enable);TIM_ARRPreloadConfig(TIM2, ENABLE);TIM_Cmd(TIM2, ENABLE); }// TIM4中断服务程序更新占空比 void TIM4_IRQHandler(void) {if (TIM_GetITStatus(TIM4, TIM_IT_Update) SET) {TIM_SetCompare3(TIM2, sineWave[waveIndex]); // 更新PA2占空比waveIndex (waveIndex 1) % SAMPLE_POINTS;TIM_ClearITPendingBit(TIM4, TIM_IT_Update);} }int main(void) {// 系统时钟初始化SystemInit();// 关键修复禁用JTAG释放PA15/PB3/PB4RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);// 生成正弦波表generateSineTable();// 初始化TIM2(PWM)和TIM4(中断)TIM2_PWM_Init();TIM4_Init();// 配置NVICNVIC_InitTypeDef NVIC_InitStruct;NVIC_InitStruct.NVIC_IRQChannel TIM4_IRQn;NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority 0;NVIC_InitStruct.NVIC_IRQChannelSubPriority 1;NVIC_InitStruct.NVIC_IRQChannelCmd ENABLE;NVIC_Init(NVIC_InitStruct);while(1) {// 主循环无需操作} }RC滤波电路 PA2 → 10kΩ电阻 → 示波器↓100nF电容↓GND
http://www.pierceye.com/news/454004/

相关文章:

  • 中山网站制无锡公司建立网站
  • 优化推广网站网站建设的岗位职责
  • 网站建设制作设计优化兰州如何用织梦建网站
  • wordpress 网站禁用全屏代码百度怎么建设网站
  • 强军网网站建设北京各大网站推广服务公司
  • 西安优秀的集团门户网站建设公司网站建设中 优秀账户的标准
  • 网站建设的对比分析移动设备网站开发注意点
  • 在word上怎么做网站链接网站开发试题
  • 自己做网站新手入门淮北论坛招聘网
  • 建网站的意义大学跳蚤市场网站建设
  • 平阳做网站成都网站优化公司哪家好
  • 庆阳北京网站建设广东省建设工程执业中心网站
  • 佛山哪里有做网站的大学生文创产品设计
  • 电商网站建设运城网站图片链接怎么做的
  • 服务器建网站教程宁波网络营销推广制作
  • 微信公众号属于网站建设网站云解析域名解析
  • 网站的建设及推广在哪找可以做网站的
  • 网站经常修改好不好北京互联网公司50强
  • 知识网站有哪些h5用什么制作
  • 广州网站制作联系方式上海共有多少家企业
  • 自己建一个网站需要什么网站关键词分析工具
  • 建三江建设局网站四川省建设厅官方网站电话
  • 福建志佳建设工程发展有限公司网站vi品牌包装
  • 专业门户网站开发公司龙岩正规全网品牌营销招商
  • 网站怎么做qq微信登陆政务网站的建设时期的概述
  • 购物网站的目的和意义西安做网站xamokj
  • 厦门市建设局网站网站开发周记30篇
  • 工业园区门户网站建设方案塘沽网站开发
  • 郑州网站设计 公司驻马店市可以做网站的公司
  • 推荐盐城网站开发安陆网站开发