OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 11738|回复: 16

想生成随机数

[复制链接]

26

主题

85

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2012-5-31
在线时间
0 小时
发表于 2012-11-28 11:43:20 | 显示全部楼层 |阅读模式
原子哥你好,
由于系统测试需要生成一个伪随机序列的信号
我使用的方法是照常生成PWM波形之后在循环内用srand()函数来生成一定范围内的随机数g,然后将g的放入CCR2寄存器内来改变空占比,但编译后出现
错误“——use_no_sonihosting was requested,but time was referenced”
有什么方法可以解决么?

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-11-28 14:27:31 | 显示全部楼层
没遇到过,你包含了#include "stdlib.h"头文件没?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

26

主题

85

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2012-5-31
在线时间
0 小时
 楼主| 发表于 2012-11-28 16:41:39 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
包含了~~ 那有没有其他方法可以生成M序列信号呢? 因为输出的波形必须是频率为400Hz的方波,只是脉宽为随机的~ 想了一整天了,参考了一些程序,还是无法实现
回复 支持 反对

使用道具 举报

108

主题

1433

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2234
金钱
2234
注册时间
2012-4-30
在线时间
7 小时
发表于 2012-11-28 17:17:38 | 显示全部楼层
顶~求分享~
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165524
金钱
165524
注册时间
2010-12-1
在线时间
2116 小时
发表于 2012-11-28 23:18:40 | 显示全部楼层
rand 
srand这两个函数就可以了。
E:\ALIENTEK 光盘资料更新记录\ALIENTEK 开发板资料_20120719\程序源码\ALIENTEK MiniSTM32开发板扩展例程\ALIENTEK MINISTM32 扩展实验13 内部FLASH图片显示实验
扩展实验13,就有用到这两个函数。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

26

主题

85

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
209
金钱
209
注册时间
2012-5-31
在线时间
0 小时
 楼主| 发表于 2012-11-29 15:51:24 | 显示全部楼层
回复【5楼】正点原子:

rand 
srand这两个函数就可以了。
E:\ALIENTEK 光盘资料更新记录\ALIENTEK 开发板资料_20120719\程序源码\ALIENTEK MiniSTM32开发板扩展例程\ALIENTEK MINISTM32 扩展实验13 内部FLASH图片显示实验
扩展实验13,就有用到这两个函数。

---------------------------------
好的~我一会看一下~谢谢了
回复 支持 反对

使用道具 举报

4

主题

21

帖子

0

精华

初级会员

Rank: 2

积分
192
金钱
192
注册时间
2017-12-28
在线时间
24 小时
发表于 2018-4-2 11:54:05 | 显示全部楼层
请问楼主,你用的是
f1的板子吗
世界上最远的距离不是天涯和海角,而是老师在讲第四章,学霸在自学第八章,而我在看目
回复 支持 反对

使用道具 举报

31

主题

265

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
413
金钱
413
注册时间
2018-1-9
在线时间
65 小时
发表于 2018-4-2 14:39:20 | 显示全部楼层
可以用DAC产生噪声波的功能,做随机数的发生器吧!这样把他付给相应的PWM就ok吧!
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2020-2-17
在线时间
5 小时
发表于 2020-2-17 18:52:38 | 显示全部楼层
正点原子 发表于 2012-11-28 23:18
rand 
srand这两个函数就可以了。
E:\ALIENTEK 光盘资料更新记录\ALIENTEK 开发板资料_2012 ...

原子哥,新手请问F1有相关产生随机数的资料吗,我用了srand,rand读定时器没成功,我将rand产生的随机数作为led0亮的延时时间,发现还是没有变化,请加您一下谢谢!
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
148
金钱
148
注册时间
2020-2-2
在线时间
81 小时
发表于 2020-3-1 15:39:41 | 显示全部楼层
有解决了吗?我的报错也一样 但是删掉srand(time)就OK了,但是随机数就不随机了
我把报错用搜狗翻译过来 ,好像是时间太短的原因
错误6915E:库报告错误:__use_no_semihosting已请求,但引用了时间信息不足,无法在映像映射中列出加载地址。
回复 支持 反对

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2020-3-1 17:28:49 | 显示全部楼层
lp123456789 发表于 2020-3-1 15:39
有解决了吗?我的报错也一样 但是删掉srand(time)就OK了,但是随机数就不随机了
我把报错用搜狗翻译过来  ...

void _sys_exit(int x){x = x;}下添加
void _ttywrch(int ch){ch = ch;} 试试
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
148
金钱
148
注册时间
2020-2-2
在线时间
81 小时
发表于 2020-4-10 09:15:40 | 显示全部楼层
nashui_sx 发表于 2020-3-1 17:28
void _sys_exit(int x){x = x;}下添加
void _ttywrch(int ch){ch = ch;} 试试

不会弄呀,能具体些吗,我找不到_sys_exit在哪
回复 支持 反对

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2020-4-10 10:42:54 | 显示全部楼层
lp123456789 发表于 2020-4-10 09:15
不会弄呀,能具体些吗,我找不到_sys_exit在哪

printf映射串口1那几行代码
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
148
金钱
148
注册时间
2020-2-2
在线时间
81 小时
发表于 2020-4-10 21:49:17 | 显示全部楼层
nashui_sx 发表于 2020-4-10 10:42
printf映射串口1那几行代码

还是不行 诶
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
148
金钱
148
注册时间
2020-2-2
在线时间
81 小时
发表于 2020-4-10 22:19:40 | 显示全部楼层
虽然不懂,但是仿照好像有用;我搜了下网上报错后面一句是but _ttywrch was referenced,然后加入void _ttywrch(int ch){ch = ch;} 就行,而我的报错后一句是but time was referenced,所以我随便写了 void time(int timed){timed=timed;}
结果是 加入 srand函数没有报错了,但是本质和没有这个函数性质一样,随机数仍然是一样的,复位后总是一样的。
所以 有无 大佬 干脆直接教我写一个随机数函数 算了
回复 支持 反对

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2020-4-11 10:15:54 | 显示全部楼层
lp123456789 发表于 2020-4-10 22:19
虽然不懂,但是仿照好像有用;我搜了下网上报错后面一句是but _ttywrch was referenced,然后加入void _tty ...

http://www.openedv.com/forum.php ... d=273879&extra=
回复 支持 反对

使用道具 举报

5

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
148
金钱
148
注册时间
2020-2-2
在线时间
81 小时
发表于 2020-4-11 14:46:57 | 显示全部楼层
谢谢啦,我看了很多帖子了,采用了adc测空引脚的ad的方法,最后只要将数据处理出来作为种子就行了,哈哈哈。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-25 00:50

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表