3: 2018-12-03 (月) 22:03:00 takaboo ソース 4: 2023-03-18 (土) 23:04:29 takaboo ソース
Line 318: Line 318:
Serial1ならJP3-2とIO19(RX1)、JP2-2とIO18(TX1)をつなぐ。 Serial1ならJP3-2とIO19(RX1)、JP2-2とIO18(TX1)をつなぐ。
#ref(E133C_mega_hard.png,80%) #ref(E133C_mega_hard.png,80%)
--使用するSerial??に合わせてクラスの初期化を変更(DXLIB v1.2以降でサポート)。 +-使用するSerial??に合わせてavr_uno_hardserial.ht中のSerialとある部分を変更(DXLIB v1.5以降)。
-#html{{ +
-<pre class="brush: c;"> +
-DXLIB dxif (false, &Serial3); +
- +
-DX2LIB dxif (false, &Serial3);</pre> +
-}}+
****ソフトウェアシリアルモード [#b9557fa4] ****ソフトウェアシリアルモード [#b9557fa4]
Line 330: Line 324:
-[[JP2>#weaf917b]]と[[JP3>#sf2421be]]はオープンにする。 -[[JP2>#weaf917b]]と[[JP3>#sf2421be]]はオープンにする。
-[[SW1>#g3d6a682]]はどの位置にあっても構わない。 -[[SW1>#g3d6a682]]はどの位置にあっても構わない。
--接続した端子に合わせてクラスの初期化を変更。~ +-接続した端子に合わせてavr_uno_softserial.h中のMY_RX_PINとMY_TX_PINのマクロを変更(DXLIB v1.5以降)
-#html{{ +
-<pre class="brush: c;"> +
-DXLIB dxif (true, NULL, 10, 9); // rxpin IO10, txpin IO9 +
- +
-DX2LIB dxif (true, NULL, 10, 9); // rxpin IO10, txpin IO9</pre> +
-}}+
****USBパススルーモード [#f2ca6d5c] ****USBパススルーモード [#f2ca6d5c]
[[UNOのUSBパススルーモード>#c1027f1a]]と同様です。 [[UNOのUSBパススルーモード>#c1027f1a]]と同様です。
 +
 +***Arduino UNO R4での使用 [#jf6785e3]
 +[[Arduino UNO R4>https://store-usa.arduino.cc/pages/un​o-r4]]はCPUがARMに変わり、メモリ容量やスピードが大幅にUPしたのがR4です。使わないのは勿体ない程の恩恵に与れます。
 +***ハードウェアシリアルモード [#c79aa251]
 +UARTがUSBポートと分離しているため、態々ハードウェアシリアルモードをコンソールと排他的に運用するような配慮は一切不要です。~
 +#html{{
 +<pre class="brush: c;"; title="avr_uno_hardserial.h">
 +#include <stdint.h>
 +
 +uint32_t us_init (uint32_t baud) {
 +  Serial1.begin (baud);
 +  Serial1.setTimeout (20);
 +  return baud;
 +}
 +
 +void us_deinit (void) {
 +  Serial1.end();
 +}
 +
 +uint32_t us_setbaudrate (uint32_t baud) {
 +  us_deinit();
 +  return us_init (baud);
 +}
 +
 +void us_rxpurge (void) {
 +  while (Serial1.available()) Serial1.read();
 +}
 +
 +void us_putc (uint8_t c) {
 +  Serial1.write (c);
 +}
 +
 +void us_puts (const uint8_t *buf, int len) {
 +  Serial1.write (buf, len);
 +}
 +
 +int us_gets (uint8_t *buf, int len) {
 +  return Serial1.readBytes (buf, len);
 +}
 +
 +void us_flush (void) {
 +  Serial1.flush();
 +}
 +</pre>
 +}}
***注意事項 [#o2f97e11] ***注意事項 [#o2f97e11]


トップ   差分 リロード印刷に適した表示   全ページ一覧 単語検索 最新ページの一覧   最新ページのRSS 1.0 最新ページのRSS 2.0 最新ページのRSS Atom