专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
STM32
W25Q128存ADC的值
2019-08-16 20:43
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
STM32/STM8
2278
12
1153
我想把ADC采的数据,存入W25Q128里,我先存到了一个数组里u16 adc【2048】 但是原子的例程存入W25Q128是 const u8 TEXT_Buffer[]={"WarShipSTM32 SPI TEST"};
他的是u8 我是u16,所以不可以,列位大能有什么好办法解决吗?(新人第一次发帖求助 谢谢大家)
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
12条回答
努安达
2019-08-17 19:50
[mw_shl_code=c,true]#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"
#include "adc.h"
#include "24cxx.h"
#include "usmart.h"
/************************************************
ALIENTEK 战舰STM32F103开发板实验17
ADC 实验
技术支持:
www.openedv.com
淘宝店铺:
http://eboard.taobao.com
关注微信公众平台微信号:"正点原子",免费获取STM32资料。
广州市星翼电子科技有限公司
作者:正点原子 @ALIENTEK
************************************************/
#define SIZE sizeof()
int main(void)
{
static u16 y[2048];
u16 T;
u16 Y;
u16 i;
u16 adcx;
u8 key;
float temp;
delay_init(); //延时函数初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
uart_init(115200); //串口初始化为115200
LED_Init(); //LED端口初始化
LCD_Init();
KEY_Init(); //按键初始化
Adc_Init(); //ADC初始化
AT24CXX_Init(); //IIC初始化
LCD_Display_Dir(1);//横屏
//mLCD_Clear(RED);
POINT_COLOR=BLUE;//设置字体为蓝 {MOD}
//POINT_COLOR=RED;//设置字体为红 {MOD}
// LCD_ShowString(60,50,200,16,16,"WarShip STM32");
// LCD_ShowString(60,70,200,16,16,"ADC TEST");
// LCD_ShowString(60,90,200,16,16,"ATOM@ALIENTEK");
// LCD_ShowString(60,110,200,16,16,"2015/1/14");
//显示提示信息
// LCD_ShowString(60,200,200,16,16,"ADC_CH0_VAL:");
while(1)
{
y[i++]=Get_Adc(ADC_Channel_1);
if(i>1280)
{
POINT_COLOR=BLACK;//设置字体为黑 {MOD}
adcx=Get_Adc_Average(ADC_Channel_1,10);
LCD_ShowxNum(250,220,adcx,4,16,0x80);//显示ADC的值
temp=(float)adcx*(3.3/4096);
adcx=temp;
LCD_ShowxNum(60,220,adcx,1,16,0x80);//显示电压值
temp-=adcx;
temp*=1000;
LCD_ShowxNum(76,220,temp,3,16,0X80);
LCD_DrawLine(0,220,350,220);
//-------波形-------------
POINT_COLOR=GRED;//黄 {MOD}波形
T=121;
for(i=0;i<1000;i++) //触发设置
{if(y
>T&&y
<(T*11/10))
if(y
>T&&y[i++]>T)//确定上升沿
{Y=i;Y=Y-1;break;}
}
if(Y==0)Y=0;
if(Y>320) Y=0;
LCD_Fill(0,0,320,215,BLACK);//清屏
for(i=0;i<320;i++){LCD_DrawLine(i,210-0.06*y[Y],i++,210-0.06*y[Y++]);} //画波形
i=0;
delay_ms(250);
Y=Y-1;
//---------------------------
LED0=!LED0;
//delay_ms(250);
}
}
}[/mw_shl_code]
加载中...
查看其它12个回答
一周热门
更多
>
相关问题
STM32F4上I2C(在PROTEUS中模拟)调试不通的问题
6 个回答
芯片供应紧张,准备换个MCU,MM32L系列替换STM32L系列的怎么样?
7 个回答
STM32同时使用两个串口进行数据收发时数据丢包的问题
5 个回答
STM32F103串口通信死机问题
4 个回答
STM32WLE5CC连接SX1268在LoRa模式下能与 SX1278互通吗?
2 个回答
相关文章
ST公司第一款无线低功耗单片机模块有效提高物联网设计生产效率
0个评论
如何实现对单片机寄存器的访问
0个评论
通过USB用STM32片内自带Bootloader下载程序及注意事项
0个评论
欲练此功必先自宫之STM32汇编启动,放慢是为了更好的前行
0个评论
×
关闭
采纳回答
向帮助了您的知道网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
STM32
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
×
付费偷看金额在0.1-10元之间
确定
×
关闭
您已邀请
0
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"
#include "adc.h"
#include "24cxx.h"
#include "usmart.h"
/************************************************
ALIENTEK 战舰STM32F103开发板实验17
ADC 实验
技术支持:www.openedv.com
淘宝店铺:http://eboard.taobao.com
关注微信公众平台微信号:"正点原子",免费获取STM32资料。
广州市星翼电子科技有限公司
作者:正点原子 @ALIENTEK
************************************************/
#define SIZE sizeof()
int main(void)
{
static u16 y[2048];
u16 T;
u16 Y;
u16 i;
u16 adcx;
u8 key;
float temp;
delay_init(); //延时函数初始化
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
uart_init(115200); //串口初始化为115200
LED_Init(); //LED端口初始化
LCD_Init();
KEY_Init(); //按键初始化
Adc_Init(); //ADC初始化
AT24CXX_Init(); //IIC初始化
LCD_Display_Dir(1);//横屏
//mLCD_Clear(RED);
POINT_COLOR=BLUE;//设置字体为蓝 {MOD}
//POINT_COLOR=RED;//设置字体为红 {MOD}
// LCD_ShowString(60,50,200,16,16,"WarShip STM32");
// LCD_ShowString(60,70,200,16,16,"ADC TEST");
// LCD_ShowString(60,90,200,16,16,"ATOM@ALIENTEK");
// LCD_ShowString(60,110,200,16,16,"2015/1/14");
//显示提示信息
// LCD_ShowString(60,200,200,16,16,"ADC_CH0_VAL:");
while(1)
{
y[i++]=Get_Adc(ADC_Channel_1);
if(i>1280)
{
POINT_COLOR=BLACK;//设置字体为黑 {MOD}
adcx=Get_Adc_Average(ADC_Channel_1,10);
LCD_ShowxNum(250,220,adcx,4,16,0x80);//显示ADC的值
temp=(float)adcx*(3.3/4096);
adcx=temp;
LCD_ShowxNum(60,220,adcx,1,16,0x80);//显示电压值
temp-=adcx;
temp*=1000;
LCD_ShowxNum(76,220,temp,3,16,0X80);
LCD_DrawLine(0,220,350,220);
//-------波形-------------
POINT_COLOR=GRED;//黄 {MOD}波形
T=121;
for(i=0;i<1000;i++) //触发设置
{if(y>T&&y<(T*11/10))
if(y>T&&y[i++]>T)//确定上升沿
{Y=i;Y=Y-1;break;}
}
if(Y==0)Y=0;
if(Y>320) Y=0;
LCD_Fill(0,0,320,215,BLACK);//清屏
for(i=0;i<320;i++){LCD_DrawLine(i,210-0.06*y[Y],i++,210-0.06*y[Y++]);} //画波形
i=0;
delay_ms(250);
Y=Y-1;
//---------------------------
LED0=!LED0;
//delay_ms(250);
}
}
}[/mw_shl_code]
一周热门 更多>