Translate
2018年9月19日 星期三
2018年9月17日 星期一
荖葉月平均售價
數值係本身出售給盤商的月收入除於月產量(大、小支),非每市都有交易。以上數值僅供考慮種植的農民參酌用。(農糧署統計99年彰化縣荖葉年產量 14524公斤/公頃=24206台斤/公頃=2420台斤/分。
民國99年農糧署調查特用作物生產成本
彰化縣荖葉年產量 14524公斤/公頃=24206台斤/公頃=2420台斤/分
生產成本1531460元/公頃=153146元/分
荖葉每台斤生產成本153146/2420=63.28元/台斤
106年平均售價171.8元/台斤。
107年平均售價125.9元/台斤。
2018年7月23日 星期一
Arduino UNO R3 自製Library RS232通訊
參考:葉難Arduino撰寫自已的程式庫、如何編寫ARDUINO LIBRARY
將自已寫的Arduino UNO R3 使用自建C函式庫改寫成Library
UART相關設定參考:http://coopermaa2nd.blogspot.com/2011/07/5-usart.html 在arduino\libraries資料夾下新增一個自已的函式庫資料夾RS232
while(!(UCSR0A & 0b00100000)){ }//等待bit5變成1,否則一直等待。等待RS232空閒。
void RS232::put_string(char *string) {
while(*string) {
while(!(UCSR0A & 0b00100000)) { }
UDR0=*string++;
}
}
while(!(UCSR0A & 0b10000000)){}//等待bit7變成1,否則一直等待。一直等待RS232傳送資料過來。
char RS232::get_char() {
char recchar;
while(!(UCSR0A & 0b10000000)){}
recchar=UDR0;
put_char(recchar);
return recchar;
}

新增一個RS232.h內容如下:
將自已寫的Arduino UNO R3 使用自建C函式庫改寫成Library
UART相關設定參考:http://coopermaa2nd.blogspot.com/2011/07/5-usart.html 在arduino\libraries資料夾下新增一個自已的函式庫資料夾RS232
USART 暫存器
UCSR0A 這個暫存器中,比較重要的是 RXC0, TXC0, UDRE0 這三個旗號:
bit7:RXC0: USART Receive Complete,當 receiver buffer 中有未讀取的資料時,這個旗號會豎起來,當資料被讀走時,旗號會清除。
bit6:TXC0: USART Transmit Complete,當 Shift Register 的資料被傳送出去,而且 transmit buffer (UDR0) 中也沒有資料時,這個旗號會豎起來。
bit5:UDRE0: USART Data Register Empty,當 transmit buffer (UDR0) 準備好放下一個要傳送的資料時,這個旗號會豎起來。
while(!(UCSR0A & 0b00100000)){ }//等待bit5變成1,否則一直等待。等待RS232空閒。
void RS232::put_string(char *string) {
while(*string) {
while(!(UCSR0A & 0b00100000)) { }
UDR0=*string++;
}
}
while(!(UCSR0A & 0b10000000)){}//等待bit7變成1,否則一直等待。一直等待RS232傳送資料過來。
char RS232::get_char() {
char recchar;
while(!(UCSR0A & 0b10000000)){}
recchar=UDR0;
put_char(recchar);
return recchar;
}

新增一個RS232.h內容如下:
#ifndef RS232_H
#define RS232_H
#include <avr/interrupt.h>
class RS232 {
public:
RS232();
~RS232();
void begin(unsigned long baud);
void put_char(char str);
void put_string(char *string);
char get_char(void);
};
#endif
新增一個RS232.cpp內容如下:
#include <RS232.h>
RS232::RS232(){
}
RS232::~RS232(){
}
void RS232::begin(unsigned long baud){
unsigned int baud_setting=(F_CPU/16/baud)-1;
UBRR0H=(unsigned char)(baud_setting>>8);
UBRR0L=(unsigned char)baud_setting;
UCSR0B=0B00011000;//啟用transmitter和receiver,並且不使用中斷。RXEN0=1,TXEN0=1,RXCIE0=0,TXCIE0=0。
UCSR0C=0B00000110;//設定frame format為N,8,1
}
void RS232::put_string(char *string)
{
while(*string)
{
while(!(UCSR0A & 0b00100000))
{ }
UDR0=*string++;
}
}
void RS232::put_char(char str)
{
while(!(UCSR0A & 0b00100000))
{ }
UDR0=str;
}
char RS232::get_char()
{
char recchar;
while(!(UCSR0A & 0b10000000)){}
recchar=UDR0;
put_char(recchar);
return recchar;
}
新增一個檔案keywords.txt內容如下:
RS232 KEYWORD1 begin KEYWORD2 put_char KEYWORD2 put_string KEYWORD2 get_char KEYWORD2新增一個資料檔案example\rs232_lib.ino內容如下:
#include <RS232.h>
RS232 RS232;
void setup(){
RS232.begin(9600);
}
void loop(){
char char_reg;
char_reg=RS232.get_char();
RS232.put_char('Z');
RS232.put_string("Hello World");
}
2018年7月19日 星期四
Arduino UNO R3藍牙實驗 App Inventor2 透過藍牙傳送訊號給 Arduino
參考:[雙A計劃] Part0:App Inventor 透過藍牙傳送訊號給 Arduino
材料清單:
1、Android手機
2、Arduino UNO R3
3、藍芽模組(BT06),請仿照電路圖接線(藍芽RX接Arduino D5、藍芽TX接Arduino D4、藍芽VCC接Arduino 5V、藍芽GND接Arduino GND)
材料清單:
1、Android手機
2、Arduino UNO R3
3、藍芽模組(BT06),請仿照電路圖接線(藍芽RX接Arduino D5、藍芽TX接Arduino D4、藍芽VCC接Arduino 5V、藍芽GND接Arduino GND)
接完線依照文章內容打上程式,編輯後上傳到板子上。
#include <SoftwareSerial.h>
#include <Wire.h> //引用二個函式庫SoftwareSerial及Wire SoftwareSerial
SoftwareSerial I2CBT(4,5); //定義PIN4及PIN5分別為Arduino RX及TX腳位接藍芽的TX腳位與RX腳位
void setup() {
Serial.begin(9600); //Arduino起始鮑率9600
I2CBT.begin(9600); //藍牙鮑率9600
//(注意!此鮑率每個藍牙晶片不一定相同,請先確認完再填寫進去)
}
void loop() {
byte cmmd[20];
int insize;
while(1){
if ((insize=(I2CBT.available()))>0)
{ //判斷有沒有訊息接收
Serial.print("input size = ");
Serial.println(insize); //顯示接收多少訊息
for (int i=0; i<insize; i++) {
Serial.print(cmmd[i]=char(I2CBT.read()));//將接收的訊息顯示出來
Serial.println(" ");
}//if
} //for
}//while
}
訂閱:
文章 (Atom)










