久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7530|回復: 3
打印 上一主題 下一主題
收起左側

【開源項目】基于stm32+機智云平臺的智能藥盒

[復制鏈接]
跳轉到指定樓層
樓主
ID:137406 發(fā)表于 2016-8-23 16:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
[tr][/tr]
基于stm32+機智云平臺的智能藥盒






file:///C:\Users\GUOQIN~1.QIN\AppData\Local\Temp\ksohtml\wps28E1.tmp.png(寶盒鎮(zhèn)樓o(∩_∩)o )
============================華麗的分割線=============================
創(chuàng)意來源:
“哎呀,忘了”!隨著生活節(jié)奏的加快,年齡的增長,人們的總容易忘記一些事情,比如忘記吃藥。尤其是家中的老人,由于身體問題,可能需要長期服藥治療,但年歲大了總容易忘這忘那的。但在科技快速發(fā)展的今天,這些都不是問題,我們設計并開發(fā)了一款名為“健康衛(wèi)士”的智能藥盒,可以聯(lián)網(wǎng)監(jiān)測用戶的服藥情況,提示用戶服藥,并且根據(jù)用戶設定自動提取所需藥物。
哎呀!!!!!!!忘記了我是來參賽的,說下這次大賽要求達成情況.

比賽要求達成情況!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

各個分值項詳解!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


一,需求提煉數(shù)據(jù)點以及產(chǎn)品定義
二  設別端實現(xiàn)配置入網(wǎng)
文字描述。。。。。。。。
三 實現(xiàn)demoapp和設備的控制其實我們自己開發(fā)了個app(后面介紹)
視頻演示。。。。。。。。
四  實時時鐘
因為這個功能我們用了pcf8563芯片 這樣就實現(xiàn)了實時時鐘(而且斷網(wǎng)后不影響
五  報警功能
手機遠程提醒(后面介紹)   語音提醒(后面介紹)
六 可產(chǎn)品化程度
先說一下這次的成本,因為我們這次是做的模型 ,什么都在探索,步進電機就換了兩次(每次都是力不夠(力量和空間)),總體來說這次花費還是不很多500 元左右,如果投入市場成本也就是200元左右另外我們設計的非常人性化
一次設定,很長時間不用管(它是自動篩選藥品哦),即使是掉電也不用怕哦,有記憶功能
斷網(wǎng)更不要怕 自動重新連接   另外本地運行(語音還是照樣提醒哦)
七硬件系統(tǒng)

硬件系統(tǒng)主要是pcb 走線布局  +stm32(C語言 功能實現(xiàn))+wifi(esp8266)+機智云平臺

在下先放個功能圖給大家嘗嘗鮮!!!!!!!!!!!!!!!!

八軟件系統(tǒng)
軟件部分主要是用機智云的sdk,集成了機智云的sdk,開發(fā)起來還是很好入門的,向我這種小白在學了兩個星期后就基本入門了,加上自己的做做UI,就可以了。代碼很簡單 貼出來了在后面(開源了)(好戲在后面。。。。。。。。。。。。。。



九 發(fā)揮項
1 語音播
通過wt588d, 進行語音提醒 ,感情切(也可以自己錄音哦
2 斷電后數(shù)據(jù)不丟
通過數(shù)據(jù)保存(一次設定,全程無憂)。(再也不用擔心重復設定了)
3 自動化分揀藥品種類
每天還在想那個藥品吃多少嗎(你就out 啦 ,全新智能藥盒, 再也不用煩惱了
4 斷網(wǎng)后自動連接
斷網(wǎng)后重新設置  不用  (網(wǎng)絡連接失敗后(有網(wǎng)絡后)會重新連接的
==================================================================
                                我是分割線=============================================================================
---------------------------上面主要講了寫大賽要求相關的東西。。。說了這么多我們還沒有知道過程呢。。。好吧 馬上來--------------------------------------------------------------------
我們這個智能藥盒是我們團隊兩個月多月的時間從無到有的一個搞機械 組裝,一個搞app ,一個搞電路寫程序,接下來就有我詳細介紹我們的這個作品
總體結構:
電氣部分:通過重新設計板子設計基于機智云平臺的設備,設計集成了若干模塊,主要包括eeprom時鐘模塊運動驅動模塊語                    音提醒模塊傳感器模塊(溫濕度、霍爾、光耦)網(wǎng)絡模塊。
藥盒模型:重點解決自動提取藥物部分的模型(轉盤式雙層篩板
         :使用機智云平臺,獨立搭建數(shù)據(jù)點
      APP:與機智云平臺和MCU通訊,從而進行對智能藥盒的管理控制遠程        監(jiān)控遠程提醒遠程溫濕度查看

材料清單:
pcb板(定制)
步進電機;驅動
震動電機
Risym槽型光耦模塊
溫濕度模塊
語音模塊
漢高百得PL70
圓管
esp8266  模塊
電池
軸承
亞克力(定制)
同步輪
同步帶
pcf8563模塊
下面我就以時間軸方式介紹一下電氣部分7月一號:開貼報名
7月1-5號:尋找小伙伴
7月5-10號:  確定主題(開始建立數(shù)據(jù)點)7月11-20號:對機智云的協(xié)議分析(包括大段字節(jié) ,數(shù)據(jù)的標志位的理解)
7月21-30號:對本地時鐘和傳輸?shù)臄?shù)據(jù)進行寫入
8月1-10號: 對機智云的硬件充分理解畫出原理圖和pcb板
8月11-17號:終于等到了pcb(對電路板的焊接 和調試 )
8月17-20號:對原理圖和pcb 圖進行修改 從而實現(xiàn)功能
注:(程序一直穿插其中)
下面以此介紹程序的實現(xiàn),電路的實現(xiàn),pcb注意的事再次之前先發(fā)下我的文件夾(每天都在記錄 哦)
機智云程序
網(wǎng)絡獲取時間:
  • uint8_t getTime[9]={0xFF,0xFF,0x00,0x05,0x17,0x78,0x00,0x00,0x94};

[color=rgb(0, 0, 0) !important]復制代碼

  • <blockquote>/**

[color=rgb(0, 0, 0) !important]復制代碼

原理圖:: pcb圖  來個3d吧
大家會疑問,為什么要做成是這樣的 答案是省錢,又做了個wifi 轉接板   現(xiàn)實圖這樣的

裁剪之后是這樣的(焊接的照片 傳不上去  正在聯(lián)系機智云。。。稍后奉上)







                                     健康衛(wèi)士APP一、控制頁面
  • <font size="1">//控制頁面
  • protected void onCreate(Bundle savedInstanceState) {
  •                 super.onCreate(savedInstanceState);
  •                 setContentView(R.layout.gokit_control);
  •                 tabHost = (TabHost) findViewById(android.R.id.tabhost);
  •                 tabHost.setup();
  •                 tabHost.addTab(tabHost.newTabSpec("one_drug").setIndicator("第一種藥").setContent(R.id.one_drug));
  •                 tabHost.addTab(tabHost.newTabSpec("two_drug").setIndicator("第二種藥").setContent(R.id.two_drug));
  •                 tabHost.addTab(tabHost.newTabSpec("three_drug").setIndicator("第三種藥").setContent(R.id.three_drug));
  •                 tabHost.addTab(tabHost.newTabSpec("four_drug").setIndicator("第四種藥").setContent(R.id.four_drug));
  •                 initViews();   //初始化控件
  •                 initEvents();  //初始化**
  •                 deviceStatu = new HashMap<String, Object>();
  •                 controlDevice = (ControlDevice) getIntent().getSerializableExtra("device");
  •                 WApplication.mControlDevice=controlDevice;
  •                 xpgWifiDevice = BaseActivity.findDeviceByMac(controlDevice.getMac(), controlDevice.getDid());
  •                 if (xpgWifiDevice != null) {
  •                         xpgWifiDevice.setListener(deviceListener);
  •                 }
  •                 actionBar.setTitle(controlDevice.getName());
  •         }
  •         final protected static char[] hexArray = "0123456789ABCDEF".toCharArray();
  •         public static String bytesToHex(byte[] bytes) {
  •                 char[] hexChars = new char[bytes.length * 3];
  •                 for (int j = 0; j < bytes.length; j++) {
  •                         int v = bytes[j] & 0xFF;
  •                         hexChars[j * 3] = hexArray[v >>> 4];
  •                         hexChars[j * 3 + 1] = hexArray[v & 0x0F];
  •                         hexChars[j * 3 + 2] = ' ';
  •                 }
  •                 return new String(hexChars);
  •         }
  •         /**
  •          * 初始化控件.
  •          */
  •         private void initViews() {
  •                 mybutton = (Button) findViewById(R.id.mybutton);
  •                 editTextA = (EditText) findViewById(R.id.editTextA);
  •                 editTextB = (EditText) findViewById(R.id.editTextB);
  •                 editTextC = (EditText) findViewById(R.id.editTextC);
  •                 editTextD = (EditText) findViewById(R.id.editTextD);
  •                 editTextE = (EditText) findViewById(R.id.editTextE);
  •                 editTextF = (EditText) findViewById(R.id.editTextF);
  •                 editTextG = (EditText) findViewById(R.id.editTextG);
  •                 editTextH = (EditText) findViewById(R.id.editTextH);
  •                 vibrator = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE);
  •                 swInfrared = (Switch) findViewById(R.id.sw_infrared1);
  •                 Map<String, String> map = FileActivity.ShowData3();
  •                 if(map != null)
  •                 {
  •                         editTextA.setText(map.get("Aname"));
  •                         editTextB.setText(map.get("Age"));
  •                         editTextC.setText(map.get("Bname"));
  •                         editTextD.setText(map.get("Bge"));
  •                         editTextE.setText(map.get("Cname"));
  •                         editTextF.setText(map.get("Cge"));
  •                         editTextG.setText(map.get("Dname"));
  •                         editTextH.setText(map.get("Dge"));
  •                 }
  •         }
  •         /**
  •          * 初始化**.
  •          */
  •         private void initEvents() {
  •                 /**打開預約時間頁面*/
  •                 mybutton.setOnClickListener(new OnClickListener() {
  •                         @Override
  •                         public void onClick(View v) {
  •                                 // TODO Auto-generated method stub
  •                                 String unt1 = editTextB.getText().toString().trim();
  •                                 String unt2 = editTextD.getText().toString().trim();
  •                                 String unt3 = editTextF.getText().toString().trim();
  •                                 String unt4 = editTextH.getText().toString().trim();
  •                                 Intent intent = new Intent();
  •                                 //儲存藥品名字合個數(shù)
  •                                 if(TextUtils.isEmpty(editTextC.getText().toString()) && TextUtils.isEmpty(editTextE.getText().toString()) && TextUtils.isEmpty(editTextG.getText().toString()))
  •                                 {
  •                                         FileActivity.DataLog3(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()), "", 0, "",0,"",0);
  •                                 }
  •                                 else if(editTextE.getText().toString() == null && editTextG.getText().toString() == null)
  •                                 {
  •                                         FileActivity.DataLog3(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()),editTextC.getText().toString(),Integer.parseInt(editTextD.getText().toString()) , "",0,"",0);
  •                                 }
  •                                 else if(editTextG.getText().toString() == null)
  •                                 {
  •                                         FileActivity.DataLog3(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()),editTextC.getText().toString(),Integer.parseInt(editTextD.getText().toString()) , editTextE.getText().toString(),Integer.parseInt(editTextF.getText().toString()),"",0);
  •                                 }
  •                                 else
  •                                 {
  •                                         FileActivity.DataLog3(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()), editTextC.getText().toString(),Integer.parseInt(editTextD.getText().toString()), editTextE.getText().toString(),Integer.parseInt(editTextF.getText().toString()), editTextG.getText().toString(),Integer.parseInt(editTextH.getText().toString()));
  •                                 }
  •                                 if(TextUtils.isEmpty(unt1))
  •                                 {
  •                                         intent.putExtra("one1","0");
  •                                 }
  •                                 else
  •                                 {
  •                                         intent.putExtra("one1",unt1);
  •                                 }
  •                                 if(TextUtils.isEmpty(unt2))
  •                                 {
  •                                         intent.putExtra("one2","0");
  •                                 }
  •                                 else
  •                                 {
  •                                         intent.putExtra("one2",unt2);
  •                                 }
  •                                 if(TextUtils.isEmpty(unt3))
  •                                 {
  •                                         intent.putExtra("one3","0");
  •                                 }
  •                                 else
  •                                 {
  •                                         intent.putExtra("one3",unt3);
  •                                 }
  •                                 if(TextUtils.isEmpty(unt4))
  •                                 {
  •                                         intent.putExtra("one4","0");
  •                                 }
  •                                 else
  •                                 {
  •                                         intent.putExtra("one4",unt4);
  •                                 }
  •                                 intent.setClass(GokitControlActivity1.this, Time_Activity.class);
  •                                 startActivity(intent);
  •                         }
  •                 });
  •                 swInfrared.setOnCheckedChangeListener(new OnCheckedChangeListener() {
  •                         @Override
  •                         public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
  •                                 try {
  •                                         if(isChecked == true)
  •                                         {
  •                                                 vibrator.vibrate(new long[]{1000,3000,1000,3000},0);  //手機震動提示
  •                                                 new AlertDialog.Builder(GokitControlActivity1.this).setTitle("警告")//設置對話框標題
  •                                              .setMessage("為了您的健康!\n請按時吃藥!")//設置顯示的內容
  •                                             .setNegativeButton("確定",new DialogInterface.OnClickListener() {//添加返回按鈕
  •                                                  @Override
  •                                                  public void onClick(DialogInterface dialog, int which) {//響應事件
  •                                                      // TODO Auto-generated method stub
  •                                                         SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm");
  •                                         Date curDate = new Date(System.currentTimeMillis());//獲取當前時間
  •                                         String str = formatter.format(curDate);
  •                                         if(editTextA.getText().toString() != null)
  •                                         {
  •                                                                  FileActivity.DataLog2(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()),str);
  •                                         }
  •                                         if(editTextC.getText().toString() != null)
  •                                         {
  •                                                 FileActivity.DataLog2(editTextC.getText().toString(),Integer.parseInt(editTextD.getText().toString()),str);
  •                                         }
  •                                         if(editTextE.getText().toString() != null)
  •                                         {
  •                                                 FileActivity.DataLog2(editTextE.getText().toString(),Integer.parseInt(editTextF.getText().toString()),str);
  •                                         }
  •                                         if(editTextG.getText().toString() != null)
  •                                         {
  •                                                 FileActivity.DataLog2(editTextG.getText().toString(),Integer.parseInt(editTextH.getText().toString()),str);
  •                                         }
  •                                                          vibrator.cancel();
  •                                                      Log.i("123"," 請保存數(shù)據(jù)!");
  •                                                  }
  •                                              }).show();//在按鍵響應事件中顯示此對話框
  •                                         }
  •                                         else
  •                                         {
  •                                                  vibrator.cancel();
  •                                         }
  •                                         Log.v("123", ""+isChecked);
  •                                         sendJson(KEY_INFRARED, isChecked);
  •                                 } catch (JSONException e) {
  •                                         e.printStackTrace();
  •                                 }
  •                         }
  •                 });
  •         }</font>

[color=rgb(0, 0, 0) !important]復制代碼

                                               


二、預約時間
  • <blockquote>class Button12 implements OnClickListener

[color=rgb(0, 0, 0) !important]復制代碼







三、溫濕度查看
  • /**
  • *溫濕度查看
  • */
  • case R.id.action_device_status:
  •                         new Ale.Builder(GokitControlActivity1.this).setTitle("溫濕度查看")//設置對話框標題
  •                      .setMessage("環(huán)境濕度   "+ s +"\n" + "環(huán)境溫度  " + w)//設置顯示的內容
  •                     .setNegativeButton("確定",new DialogInterface.OnClickListener() {//添加返回按鈕
  •                          @Override
  •                          public void onClick(DialogInterface dialog, int which) {//響應事件
  •                              // TODO Auto-generated method stub
  •                              Log.i("alertdialog"," 請保存數(shù)據(jù)!");
  •                          }
  •                      }).show();//在按鍵響應事件中顯示此對話框
  •                         break;

[color=rgb(0, 0, 0) !important]復制代碼

                                               


四、儲存數(shù)據(jù)與讀取數(shù)據(jù)

  • /**

[color=rgb(0, 0, 0) !important]復制代碼


五、服藥日志記錄

  • /*<span style="font-size: 14px; line-height: 1.5;">*服藥日志</span>

[color=rgb(0, 0, 0) !important]復制代碼









點評回復 編輯
[url=]使用道具[/url] [url=]舉報[/url]



[tr][/tr]



174
主題
368
帖子
725
積分

積分725
沙發(fā)
發(fā)表于 2016-7-5 17:22:58 | 只看該作者


期待中!!!





管理回復 編輯
[url=]使用道具[/url]






8
主題
90
帖子
331
積分

積分331
板凳
  樓主| 發(fā)表于 昨天 14:14 | 只看該作者


【STM 32】之智能藥盒
本帖最后由 郭慶帥 于 2016-8-22 18:43 編輯

                                 健康衛(wèi)士APP一、控制頁面
  • <font size="1">//控制頁面
  • protected void onCreate(Bundle savedInstanceState) {
  •                 super.onCreate(savedInstanceState);
  •                 setContentView(R.layout.gokit_control);
  •                 tabHost = (TabHost) findViewById(android.R.id.tabhost);
  •                 tabHost.setup();
  •                 tabHost.addTab(tabHost.newTabSpec("one_drug").setIndicator("第一種藥").setContent(R.id.one_drug));
  •                 tabHost.addTab(tabHost.newTabSpec("two_drug").setIndicator("第二種藥").setContent(R.id.two_drug));
  •                 tabHost.addTab(tabHost.newTabSpec("three_drug").setIndicator("第三種藥").setContent(R.id.three_drug));
  •                 tabHost.addTab(tabHost.newTabSpec("four_drug").setIndicator("第四種藥").setContent(R.id.four_drug));
  •                 initViews();   //初始化控件
  •                 initEvents();  //初始化**
  •                 deviceStatu = new HashMap<String, Object>();
  •                 controlDevice = (ControlDevice) getIntent().getSerializableExtra("device");
  •                 WApplication.mControlDevice=controlDevice;
  •                 xpgWifiDevice = BaseActivity.findDeviceByMac(controlDevice.getMac(), controlDevice.getDid());
  •                 if (xpgWifiDevice != null) {
  •                         xpgWifiDevice.setListener(deviceListener);
  •                 }
  •                 actionBar.setTitle(controlDevice.getName());
  •         }
  •         final protected static char[] hexArray = "0123456789ABCDEF".toCharArray();
  •         public static String bytesToHex(byte[] bytes) {
  •                 char[] hexChars = new char[bytes.length * 3];
  •                 for (int j = 0; j < bytes.length; j++) {
  •                         int v = bytes[j] & 0xFF;
  •                         hexChars[j * 3] = hexArray[v >>> 4];
  •                         hexChars[j * 3 + 1] = hexArray[v & 0x0F];
  •                         hexChars[j * 3 + 2] = ' ';
  •                 }
  •                 return new String(hexChars);
  •         }
  •         /**
  •          * 初始化控件.
  •          */
  •         private void initViews() {
  •                 mybutton = (Button) findViewById(R.id.mybutton);
  •                 editTextA = (EditText) findViewById(R.id.editTextA);
  •                 editTextB = (EditText) findViewById(R.id.editTextB);
  •                 editTextC = (EditText) findViewById(R.id.editTextC);
  •                 editTextD = (EditText) findViewById(R.id.editTextD);
  •                 editTextE = (EditText) findViewById(R.id.editTextE);
  •                 editTextF = (EditText) findViewById(R.id.editTextF);
  •                 editTextG = (EditText) findViewById(R.id.editTextG);
  •                 editTextH = (EditText) findViewById(R.id.editTextH);
  •                 vibrator = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE);
  •                 swInfrared = (Switch) findViewById(R.id.sw_infrared1);
  •                 Map<String, String> map = FileActivity.ShowData3();
  •                 if(map != null)
  •                 {
  •                         editTextA.setText(map.get("Aname"));
  •                         editTextB.setText(map.get("Age"));
  •                         editTextC.setText(map.get("Bname"));
  •                         editTextD.setText(map.get("Bge"));
  •                         editTextE.setText(map.get("Cname"));
  •                         editTextF.setText(map.get("Cge"));
  •                         editTextG.setText(map.get("Dname"));
  •                         editTextH.setText(map.get("Dge"));
  •                 }
  •         }
  •         /**
  •          * 初始化**.
  •          */
  •         private void initEvents() {
  •                 /**打開預約時間頁面*/
  •                 mybutton.setOnClickListener(new OnClickListener() {
  •                         @Override
  •                         public void onClick(View v) {
  •                                 // TODO Auto-generated method stub
  •                                 String unt1 = editTextB.getText().toString().trim();
  •                                 String unt2 = editTextD.getText().toString().trim();
  •                                 String unt3 = editTextF.getText().toString().trim();
  •                                 String unt4 = editTextH.getText().toString().trim();
  •                                 Intent intent = new Intent();
  •                                 //儲存藥品名字合個數(shù)
  •                                 if(TextUtils.isEmpty(editTextC.getText().toString()) && TextUtils.isEmpty(editTextE.getText().toString()) && TextUtils.isEmpty(editTextG.getText().toString()))
  •                                 {
  •                                         FileActivity.DataLog3(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()), "", 0, "",0,"",0);
  •                                 }
  •                                 else if(editTextE.getText().toString() == null && editTextG.getText().toString() == null)
  •                                 {
  •                                         FileActivity.DataLog3(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()),editTextC.getText().toString(),Integer.parseInt(editTextD.getText().toString()) , "",0,"",0);
  •                                 }
  •                                 else if(editTextG.getText().toString() == null)
  •                                 {
  •                                         FileActivity.DataLog3(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()),editTextC.getText().toString(),Integer.parseInt(editTextD.getText().toString()) , editTextE.getText().toString(),Integer.parseInt(editTextF.getText().toString()),"",0);
  •                                 }
  •                                 else
  •                                 {
  •                                         FileActivity.DataLog3(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()), editTextC.getText().toString(),Integer.parseInt(editTextD.getText().toString()), editTextE.getText().toString(),Integer.parseInt(editTextF.getText().toString()), editTextG.getText().toString(),Integer.parseInt(editTextH.getText().toString()));
  •                                 }
  •                                 if(TextUtils.isEmpty(unt1))
  •                                 {
  •                                         intent.putExtra("one1","0");
  •                                 }
  •                                 else
  •                                 {
  •                                         intent.putExtra("one1",unt1);
  •                                 }
  •                                 if(TextUtils.isEmpty(unt2))
  •                                 {
  •                                         intent.putExtra("one2","0");
  •                                 }
  •                                 else
  •                                 {
  •                                         intent.putExtra("one2",unt2);
  •                                 }
  •                                 if(TextUtils.isEmpty(unt3))
  •                                 {
  •                                         intent.putExtra("one3","0");
  •                                 }
  •                                 else
  •                                 {
  •                                         intent.putExtra("one3",unt3);
  •                                 }
  •                                 if(TextUtils.isEmpty(unt4))
  •                                 {
  •                                         intent.putExtra("one4","0");
  •                                 }
  •                                 else
  •                                 {
  •                                         intent.putExtra("one4",unt4);
  •                                 }
  •                                 intent.setClass(GokitControlActivity1.this, Time_Activity.class);
  •                                 startActivity(intent);
  •                         }
  •                 });
  •                 swInfrared.setOnCheckedChangeListener(new OnCheckedChangeListener() {
  •                         @Override
  •                         public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
  •                                 try {
  •                                         if(isChecked == true)
  •                                         {
  •                                                 vibrator.vibrate(new long[]{1000,3000,1000,3000},0);  //手機震動提示
  •                                                 new AlertDialog.Builder(GokitControlActivity1.this).setTitle("警告")//設置對話框標題
  •                                              .setMessage("為了您的健康!\n請按時吃藥!")//設置顯示的內容
  •                                             .setNegativeButton("確定",new DialogInterface.OnClickListener() {//添加返回按鈕
  •                                                  @Override
  •                                                  public void onClick(DialogInterface dialog, int which) {//響應事件
  •                                                      // TODO Auto-generated method stub
  •                                                         SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd HH:mm");
  •                                         Date curDate = new Date(System.currentTimeMillis());//獲取當前時間
  •                                         String str = formatter.format(curDate);
  •                                         if(editTextA.getText().toString() != null)
  •                                         {
  •                                                                  FileActivity.DataLog2(editTextA.getText().toString(),Integer.parseInt(editTextB.getText().toString()),str);
  •                                         }
  •                                         if(editTextC.getText().toString() != null)
  •                                         {
  •                                                 FileActivity.DataLog2(editTextC.getText().toString(),Integer.parseInt(editTextD.getText().toString()),str);
  •                                         }
  •                                         if(editTextE.getText().toString() != null)
  •                                         {
  •                                                 FileActivity.DataLog2(editTextE.getText().toString(),Integer.parseInt(editTextF.getText().toString()),str);
  •                                         }
  •                                         if(editTextG.getText().toString() != null)
  •                                         {
  •                                                 FileActivity.DataLog2(editTextG.getText().toString(),Integer.parseInt(editTextH.getText().toString()),str);
  •                                         }
  •                                                          vibrator.cancel();
  •                                                      Log.i("123"," 請保存數(shù)據(jù)!");
  •                                                  }
  •                                              }).show();//在按鍵響應事件中顯示此對話框
  •                                         }
  •                                         else
  •                                         {
  •                                                  vibrator.cancel();
  •                                         }
  •                                         Log.v("123", ""+isChecked);
  •                                         sendJson(KEY_INFRARED, isChecked);
  •                                 } catch (JSONException e) {
  •                                         e.printStackTrace();
  •                                 }
  •                         }
  •                 });
  •         }

[color=rgb(0, 0, 0) !important]復制代碼



二、預約時間
  • <blockquote>class Button12 implements OnClickListener

[color=rgb(0, 0, 0) !important]復制代碼








三、溫濕度查看
  • /**
  • *溫濕度查看
  • */
  • case R.id.action_device_status:
  •                         new Ale.Builder(GokitControlActivity1.this).setTitle("溫濕度查看")//設置對話框標題
  •                      .setMessage("環(huán)境濕度   "+ s +"\n" + "環(huán)境溫度  " + w)//設置顯示的內容
  •                     .setNegativeButton("確定",new DialogInterface.OnClickListener() {//添加返回按鈕
  •                          @Override
  •                          public void onClick(DialogInterface dialog, int which) {//響應事件
  •                              // TODO Auto-generated method stub
  •                              Log.i("alertdialog"," 請保存數(shù)據(jù)!");
  •                          }
  •                      }).show();//在按鍵響應事件中顯示此對話框
  •                         break;

[color=rgb(0, 0, 0) !important]復制代碼




四、儲存數(shù)據(jù)與讀取數(shù)據(jù)

  • /**

[color=rgb(0, 0, 0) !important]復制代碼


五、服藥日志記錄

  • /*<span style="font-size: 14px; line-height: 1.5;">*服藥日志</span>

[color=rgb(0, 0, 0) !important]復制代碼

[color=rgb(0, 0, 0) !important]






分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發(fā)
ID:164794 發(fā)表于 2017-8-4 18:07 | 只看該作者
感謝樓主的分享
回復

使用道具 舉報

板凳
ID:18591 發(fā)表于 2019-1-20 21:06 | 只看該作者

下載學習,謝謝分享
回復

使用道具 舉報

地板
ID:555968 發(fā)表于 2020-2-19 18:49 來自觸屏版 | 只看該作者
這個app用那個可個軟件工具生成?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 五月av| 国产高清av | 男人影院在线观看 | 婷婷色网 | 中国免费毛片 | 精品国产一区二区三 | 午夜影院在线免费观看 | 精品在线一区 | 黄片毛片在线观看 | 激情视频一区 | 91久久精品日日躁夜夜躁欧美 | 美女黄色免费网站 | 精品视频免费观看 | 亚洲久草 | 久久成人毛片 | 亚洲在线视频观看 | 久久免费看视频 | 精品免费在线观看 | 日韩中文字幕在线 | av网站免费在线观看 | 可以看毛片的网站 | 精品综合网 | 精品黄色片 | 欧美vieox另类极品 | 国产小视频在线 | 天天爽天天爽 | 躁躁躁日日躁 | 一极黄色片 | 日本免费中文字幕 | 日韩精品视频免费播放 | 亚洲黄色大片 | 免费91| 欧美久久久久久久久 | 日韩和的一区二区 | 成人在线播放视频 | 亚洲欧美视频在线观看 | 国产精品第二页 | 国产欧美精品一区二区色综合 | 中国黄色1级片 | 三级网站在线播放 | 亚洲福利一区 |