单片机课程设计报告——辐射强度计.PDFVIP

单片机课程设计报告——辐射强度计.PDF

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机课程设计报告——辐射强度计

单片机课程设计报告 ——辐射强度计 原理设计 利用盖革计数器,测量辐射强度,再由液晶屏显示 产品用途 简单来说,这个盖格计数器就是检测核辐射之类的,可能大家以为日常中我们不 会接触到核辐射,但其实不然,家用装修石材(好像是大理石吧)里面可能会辐 射超标,特别是现在的商家良心大大的坏了,像是新装修的房子,还是做个这个 检测下比较放心可靠! 产品图 实验原件介绍 1.Arduino uno:以ATmega328 MCU 控制器为基础——具备14 路数字输入/输出 引脚(其中6 路可用于PWM 输出)、6 路模拟输入、一个16MHz 陶瓷谐振器、一个 USB 接口、一个电源插座、一个ICSP 接头和一个复位按钮。Uno 并未使用FTDI 出品的USB 到串行(USB-to-serial)驱动芯。Uno 并未使用FTDI 出品的USB 到串 行(USB-to-serial)驱动芯片。ATmega16U2 (ATmega8U2至R2 版)取而代之,作 为USB 到串行口的转换器。 2.盖革计数器:一种专门探测电离辐射(α粒子、β粒子、γ射线和X 射线)强 度的记数仪器。由充气的管或小室作探头,当向探头施加的电压达到一定范围时, 射线在管内每电离产生一对离子,就能放大产生一个相同大小的电脉冲并被相连 的电子装置所记录,由此测量得单位时间内的射线数。 3.1602 液晶显示器(IIC1602):工业字符型液晶,能够同时显示16x02 即32 个字符。(16 列2 行) 实验主程序 #include Wire.h #include LiquidCrystal_I2C.h #include SPI.h #define LOG_PERIOD 15000 //Logging period in milliseconds, recommended value 15000-60000. #define MAX_PERIOD 60000 //Maximum logging period without modifying this sketch unsigned long counts; /ariable for GM Tube events unsigned long cpm; /ariable for CPM unsigned int multiplier; /ariable for calculation CPM in this sketch unsigned long previousMillis; /ariable for time measurement float usv; LiquidCrystal_I2C lcd(0x27, 16, 2); //设置LCD 地址为 0x27 for a 16 chars and 2 line display void tube_impulse() { // 自加 counts++; } void setup() { counts = 0; cpm = 0; //计数 multiplier = MAX_PERIOD / LOG_PERIOD; //calculating multiplier, depend on your log period //Serial.begin(9600); attachInterrupt(0, tube_impulse, FALLING); //中断为下降沿触发 ////////////////// lcd.init(); // 输出到屏幕 lcd.backlight(); lcd.setCursor(5, 0); lcd.print(Boot...); //写一个开机boot 加载的画面,然而这是过度用的。 lcd.setCursor(0, 1); for(int i=0;i16;i++) { lcd.write(0xff); delay(250); } } void loop() { unsigned long currentMillis = millis(); if (currentMillis - previousMillis LOG_PERIOD) { previousMillis = currentMillis; cpm = counts * multiplier;//得出技术次数 usv = float(cpm) / 151;//带入公式计算出辐射强度

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档