你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
每日签到
STM32团队2
论坛吐槽优化专区
升级测试
stmf32f051 dac 无论怎么配置 pa4都没有输出
[复制链接]
xxw-370311
提问时间:2017-12-12 19:27 /
阅读主题, 点击返回1楼
赞
0
收藏
2
评论
14
分享
发布时间:2017-12-12 19:27
请先
登录
后回复
14个回答
无薪税绵
回答时间:2018-3-1 10:23:53
a0a.1 32b0c
本帖最后由 无薪税绵 于 2018-3-1 11:13 编辑
看看 VDDA 和 VSSA 的电压是否正常。
void MyDAC_Init(void) //DAC channel1 Configuration
{
unsigned int tmpreg1=0,tmpreg2=0;
RCC->APB2ENR|=1<<2; //使能PORTA时钟
RCC->APB1ENR|=RCC_APB1Periph_DAC; //使能DAC时钟
GPIOA->CRL&=0XFF00FFFF;
GPIOA->CRL|=0X00440000; //PA4,5 浮空输入
tmpreg1=DAC->CR; //Get the DAC CR value
tmpreg1&=~(CR_CLEAR_Mask<<DAC_Channel_1); //Clear BOFFx, TENx, TSELx, WAVEx and MAMPx bits
tmpreg2=(DAC_Trigger_Software|DAC_WaveGeneration_None|DAC_LFSRUnmask_Bits8_0|DAC_OutputBuffer_Enable);
tmpreg1|=tmpreg2<<DAC_Channel_1; //Calculate CR register value depending on DAC_Channel
DAC->CR=tmpreg1; //Write to DAC CR
DAC->CR|=CR_EN_Set<<DAC_Channel_1; //DAC Channel1使能,PA4自动连接到DAC
DAC1_SetData(2900);
}
void DAC1_SetData(u16 data)
{
DAC->DHR12R1=data; //通道1的12位右对齐数据
DAC->SWTRIGR|=0x01; //软件启动转换
}
复制代码
再上个STM32F05X系列的参考代码:
STM32F05x系列Code.7z.rar
(967.94 KB, 下载次数: 5)
2018-3-1 11:12 上传
点击文件名下载附件
参考代码
请把扩展名改为.7z再解压。
DAC输出配置
评分
参与人数
1
蝴蝶豆
+4
收起
理由
zero99
+ 4
查看全部评分
赞
0
评论
回复
支持
反对
toofree
回答时间:2018-3-1 10:35:31
a0a.1 32b0c
本帖最后由 toofree 于 2018-3-1 10:40 编辑
刚看了STM32F0的固件库,DAC样例非常简单。只不过触发方式为 DAC_Trigger_None,初始化完成后,随时刷DAC_SetChannel1Data(DAC_Align_12b_R, ADCVal);,DAC立即输出。
总之,先跑个样例程序,排除管脚或其它硬件故障,然后再自己发挥。
评分
参与人数
1
蝴蝶豆
+3
收起
理由
zero99
+ 3
查看全部评分
赞
0
评论
回复
支持
反对
feixiang20
回答时间:2018-3-1 11:04:13
a0a.1 32b0c
可能是硬件连接异常,输出0的话,再检查下配置是否正确,不行的话,再去查官方资料DAC部分,尝试样例检测,再来对比DAC_Init(DAC_Channel_1, &dactype);DAC_Cmd(DAC_Channel_1, ENABLE);
DAC_SetChannel1Data(DAC_Align_12b_R,修改了看看对比下);DAC_SoftwareTriggerCmd(DAC_Channel_1, ENABLE);
评分
参与人数
1
蝴蝶豆
+3
收起
理由
zero99
+ 3
查看全部评分
赞
0
评论
回复
支持
反对
哈佛祖安智
回答时间:2018-3-1 17:13:59
a0a.1 32b0c
用HAL库的例程试试吧,标准库过时了
评分
参与人数
1
蝴蝶豆
+1
收起
理由
zero99
+ 1
查看全部评分
赞
0
评论
回复
支持
反对
hello_bug
回答时间:2018-3-1 22:36:22
a0a.1 32b0c
DAC是复用功能吗,是否需要开启AFIO复用。另外就是DAC的配置是否正确,先看看官方例程吧。
评分
参与人数
1
蝴蝶豆
+2
收起
理由
zero99
+ 2
查看全部评分
赞
0
评论
回复
支持
反对
1
2
/ 2 页
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
看看 VDDA 和 VSSA 的电压是否正常。
再上个STM32F05X系列的参考代码:
参考代码
请把扩展名改为.7z再解压。
DAC输出配置
评分
查看全部评分
刚看了STM32F0的固件库,DAC样例非常简单。只不过触发方式为 DAC_Trigger_None,初始化完成后,随时刷DAC_SetChannel1Data(DAC_Align_12b_R, ADCVal);,DAC立即输出。
总之,先跑个样例程序,排除管脚或其它硬件故障,然后再自己发挥。
评分
查看全部评分
DAC_SetChannel1Data(DAC_Align_12b_R,修改了看看对比下);DAC_SoftwareTriggerCmd(DAC_Channel_1, ENABLE);
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分