X



Arduino初心者熱烈大歓迎質問スレ part30

レス数が900を超えています。1000を超えると表示できなくなるよ。
2021/02/18(木) 01:01:36.39ID:hm9MM2LM
http://www.arduino.cc/

【質問者心得】
・スレに一応目を通してから質問しましょう
・回答者はエスパーではありません。状況が分かるように詳しく書きましょう
 詳しく書いてくれないと、答える方も困ってしまいます。答えようがないのです
【回答者心得】
・すぐにググレカスと言う前に「○○でググれカス」って言うような大人の余裕を見せつけてやりましょう
・節度ある初心者さんには、特に優しくね

前スレ
Arduino初心者熱烈大歓迎質問スレ part29
http://rio2016.5ch.net/test/read.cgi/denki/1601349163/

過去スレ
Arduino初心者熱烈大歓迎質問スレ part28
https://rio2016.5ch.net/test/read.cgi/denki/1591734520/
Arduino初心者熱烈大歓迎質問スレ part27
http://rio2016.5ch.net/test/read.cgi/denki/1585316143/
Arduino初心者熱烈大歓迎質問スレ part26
http://rio2016.5ch.net/test/read.cgi/denki/1579146318/
Arduino初心者熱烈大歓迎質問スレ part25
http://rio2016.5ch.net/test/read.cgi/denki/1568358922/
Arduino初心者熱烈大歓迎質問スレ part24
http://rio2016.5ch.net/test/read.cgi/denki/1554776918/
Arduino初心者熱烈大歓迎質問スレ part23
http://rio2016.5ch.net/test/read.cgi/denki/1541233445/
Arduino初心者熱烈大歓迎質問スレ part22
http://rio2016.5ch.net/test/read.cgi/denki/1534549073/
Arduino初心者熱烈大歓迎質問スレ part21
http://rio2016.5ch.net/test/read.cgi/denki/1527252804/
Arduino初心者熱烈大歓迎質問スレ part20
http://rio2016.5ch.net/test/read.cgi/denki/1514503488/
Arduino初心者熱烈大歓迎質問スレ part19
http://rio2016.2ch.net/test/read.cgi/denki/1500745528/
Arduino初心者熱烈大歓迎質問スレ part18
http://rio2016.2ch.net/test/read.cgi/denki/1485192244/
2021/05/30(日) 23:22:08.70ID:yVtX83O/
>>833
いまコード見返したら、ライブラリはこれを参考にしたかな。秋月のコードは見てないな。
他にいくつか試したけどこれがしっくり来た(んだと思うw 作ったのは数年前なんで)
https://github.com/olkal/HX711_ADC

このライブラリをたたき台にして、あと7セグ表示、ターレボタン、PCSポタンとか付けてる
いくつかライブラリがあったから試してみてわ?

>>834
ずっと電子工作やってれば中華でも良い中華と悪い中華の見分けぐらい出来るでしょ?
2021/05/30(日) 23:26:58.60ID:yVtX83O/
思い出したけど、値は結構ドリフトするよ。
HX711のサンプルレートを80SPSに出来るけど
デフォの10SPSのままのほうが実用的だと思うわ。
あとはコードの方でサンプルの取り方んお調整が必要
2021/05/30(日) 23:27:50.48ID:yVtX83O/
×あとはコードの方でサンプルの取り方のんお調整が必要
○あとはコードの方でサンプルの取り方の調整が必要

疲れてるわ。寝る
2021/05/30(日) 23:31:43.56ID:r3DyO85O
>>835-837
ありがとう。
明日ソースを見て実行してみますm(__)m。
2021/05/31(月) 03:07:55.46ID:wMgWggjU
温度、湿度、明るさを記録していました。
ただ、屋根の下で霧などはありますが雨はほぼ確実にかからない場所なのですが屋外で使っていると2年位でかなり錆びてしまいました
100Vを5Vに変換するUSB部分も含めて屋外で年単位で使うのにはどうすればいいでしょうかね?
2021/05/31(月) 07:13:31.42ID:J54Umza4
>>839
KEYENCEやOMRONへ仕様をまとめてメールしたら、工業用のセンサー等を紹介してくれます。
2021/05/31(月) 09:15:53.77ID:OouSsI9E
>>839
基板の防湿コーティングだと思う

それとACアダプタの熱がマイコンによく伝わるようにしたら結露が防げるかもしれない
2021/05/31(月) 10:01:20.50ID:zvoVke/b
>>835
ソースを試してみました。
これ、いいですね。キャリブレーションが簡単にできます。
計測数値のずれですけど、配線がわずかに干渉してたみたいで、
経路を直したらずいぶん改善されました(0.5程度の表示までもどるように)。
あとは計測するときのおもりの載せる位置の問題なのですが。
ロードセルには60x60mm程度の載せ台を作ってねじ止めしていいます。
計測対象のおもりを載せる位置によって計測値にばらつきが出ます。
これを回避するには、ロードセルを2個使ってモーメントの影響を受けないように
するとかしないとだめですかね?
2021/05/31(月) 10:32:41.12ID:hJKH5UFA
松下のインパクトドライバーの充電器壊れてるの見たら基板表面が透明の薄くて固いので塗装?されてた
エポキシかな?
2021/05/31(月) 17:06:37.03ID:aWe3Y33l
>>843
グルーガンじゃね
2021/05/31(月) 17:35:02.30ID:hJKH5UFA
>>844
かな?
2021/05/31(月) 17:41:41.61ID:eL9zMLeT
>>843
ウレタンでポッティングしてあんじゃね?
2021/06/02(水) 08:02:45.77ID:umDdA2FC
>>843
アマゾンで防湿コーティングで検索して出てくるgootのはシリコン、サンハヤトのはポリビニール系樹脂だな
2021/06/02(水) 16:32:33.35ID:g7IrmHub
クレ5−56とか半年毎くらいに吹き付けといたらアカンのか
2021/06/02(水) 17:05:32.73ID:9YqAb2nm
ホコリまみれになりそう
2021/06/02(水) 17:18:44.27ID:12pcDDQ5
>>848
樹脂がぶっ壊れる
2021/06/02(水) 17:27:06.27ID:g7IrmHub
>>850
やっぱりアカンかw
2021/06/02(水) 17:42:33.03ID:95IsdyQL
コートスプレーならハヤコートとか。使ったことないけど。
2021/06/03(木) 03:05:36.86ID:k5rsiV5/
Arduinoに直接関係はないのですが、seeed のGrove-RS485
を入手して遊んでいますが、TXDENを操作しなくても送信と受信が出来るんです。
https://i.imgur.com/vDoHqod.png
これが回路図なのですが、ピンクで囲んだ部分。
*REとDE が 5Vに接続しています。
トランシーバーは、この場合、送信は出来て受信は出来ないのかな
と思っていましたが、両方問題なく出来てしまいます。
https://www.maximintegrated.com/jp/products/interface/transceivers/MAX13487E.html
この中に、「AutoDirection制御付き」という事があります。
これがつまり、TXDEN の操作は必要ないという機能なのでしょうか?
もし、そうなら、この機能の注意点とかありますか?
2021/06/03(木) 05:53:31.53ID:HSzc3Gp4
>>853
その回路図のMAX13487Eのシンボルが間違っているだけ

MAX13487Eのシンボルを作るのが面倒くさかったのでしょう
2021/06/03(木) 06:33:05.35ID:HSzc3Gp4
俺みたいな爺さんの戯言だけど
回路図を描くのは基板製作の為に行うネットリスト生成ツールとしか考えていない人が多い気がする
回路図を他人に見てもらうという考えが無いんだな
2021/06/03(木) 08:58:45.19ID:nUbGv+oW
カメレス
>>752
> 水晶ごとに発振周波数の前提にしている負荷容量があること、外付けする容量ではなくICや実装時に結果的に発生する容量も込みであること

肝心な事が抜けている。
負荷容量は、水晶のL成分と負荷容量のC成分で共振回路を形成する。
コルピッツ発振回路で調べるといい。

余談
負荷容量、俺的には水晶屋がマイコン屋に分かりやす〜く説明するための造語だと思ってる。
あの容量は共振回路の一部であって、負荷ではないからさ。
2021/06/03(木) 17:30:33.52ID:H7iU4WBr
ProMicro安いの探してるんですが、
蟻/item/32788040866.html

これ、ProMicroですよね?写真を見る限り、32U4乗ってるんだけど、
ATmega328とも書いてて、ボード選択ではMicroを選んでる。

どっちなんでしょう?
2021/06/03(木) 18:31:08.11ID:i2cxjwIf
>>857
> ATmega328とも書いてて
英語読めないの?
2021/06/03(木) 19:17:29.21ID:SJRDSdKo
うわ983円もすんのか、pico買えちゃうじゃん
前は300円台だったのに3倍近いな
2021/06/03(木) 19:57:34.77ID:th0ZWRTu
ProMicroとか300円切ってた時代に買ってたな
2021/06/03(木) 20:01:27.08ID:I3YV4oQ0
124円のdigisparkで充分だったのでProMicroは買わなかった
PC用のTVリモコンとして今も使ってる
2021/06/03(木) 20:32:49.76ID:H7iU4WBr
>>858
まだ小学生なので、簡単な英文しか読めません。
2021/06/03(木) 21:08:31.07ID:anfcHjn5
>>857
ProMicro
2021/06/03(木) 21:10:31.49ID:uuRXreod
小学生って聞いたら急にやさしくなりやがってw
2021/06/03(木) 21:37:43.48ID:th0ZWRTu
>>857>>858

TZT Pro Micro ATmega32U4 5V 16MHz Replace ATmega328 For arduino Pro Mini With 2 Row Pin Header For Leonardo Mini Usb Interface

我らTZTが販売するPro Micro!ATmega32U4マイコン搭載!こちら5Vで16MHz動作のバージョンです!!
Pro MiniなどATmega328Pが乗ったボードから乗り換えにもオススメ!!レオナルドと同じ小型のUSBコネクタ!2列分のピンヘッダ付き!

と書いてあると思う。
2021/06/03(木) 22:29:15.99ID:b9vPDdSr
>>862
翻訳エンジン使えよ、馬鹿かお前は
2021/06/03(木) 22:42:52.13ID:JsSOhLtJ
馬鹿じゃないよ。馬鹿っていう人が馬鹿だよ。
2021/06/03(木) 23:13:11.53ID:kpssWzk6
ふうん、じゃ、馬鹿だよ、っていう人も馬鹿だなw
2021/06/03(木) 23:31:36.33ID:JsSOhLtJ
素晴らし理屈を発見した俺偉い頭良い
2021/06/04(金) 06:22:08.24ID:9yMq5OX/
ありがとうございます。
これを買おうと思います。
2021/06/04(金) 14:41:14.80ID:4rvMzo4B
>>ID:JsSOhLtJ
自分から水掛け論に持ち込んだ挙句に自滅w
2021/06/04(金) 14:48:01.86ID:U0MED8jz
>>871
「素晴らし理屈を発見した俺偉い頭良い」は>>868に対して言ってるのですよ

人にバカというものがバカ。これは名言ですよ。
これに似たもので「ディベートに於いて誹謗中傷はご法度」というものもあります。
なぜなら誹謗中傷したほうが、結果不利になる。結局、不利益を被ることになる。
日本は幼少期からディベートについてもっと学習させたほうがいい。
2021/06/04(金) 15:08:55.94ID:4rvMzo4B
「人にバカというもの」はバカだといってるのでそいつ自身もバカに他ならない。
「人をバカ呼ばわりしてはいけません。」と、普遍的な表現を使えばいいだけのこと。
勝手に「名言」扱いしてよく考えずに使うから結局負け犬の遠吠えになる。
2021/06/04(金) 15:12:38.74ID:eFW0iG55
次の患者さんどうそー
2021/06/07(月) 08:31:07.48ID:TLCAOqME
7segとネオピクセルとロータリーエンコーダーを同時に使用したいです。
7segはダイナミック点灯をms2タイマーで制御したいのですが、ロータリーエンコーダーも出来ればタイマーで動きを感知したい。
複数の用途にタイマーを使う方法は関数にしてまとめれば良いのでしょうか?
2021/06/07(月) 10:20:47.05ID:0D0iRlBD
analogWriteによるPWM出力のデューティ(%)って
(指令値/255)×100 %
ってことで良いですか?
分母が256でないのがちょっと気持ち悪いですが
2021/06/07(月) 12:27:46.14ID:pNqK1S1n
>>875
ロータリーエンコーダーをタイマーで云々が意味分からん
B相を割り込みトリガーにしてその時にA相がONしてるかOFFしてるか調べるんじゃないの?
2021/06/07(月) 16:31:04.88ID:fMjpX/88
>>877
ロータリーエンコーダをタイマのカウンタで、カウントしたいって事じゃないかな?
2021/06/07(月) 17:41:34.04ID:FfKdlJjF
チャタリング除去だろ
2021/06/07(月) 18:06:50.89ID:UC562oPW
>>875
1つずつタイマー割り振ると足りなくなるので
millis()で次のイベント処理までの経過時間を計る方法があるよ
7セグのダイナミック点灯は60fps以下だとチラついてしまうから16msの優先処理にして
ネオピクセルは100ms周期でイベント処理するとかメインループに書く

ロータリーエンコーダーは割り込みで処理するけど
こっちも前回の割り込み時間millis()を保持して
50ms以内ならチャタリングとみなして無視するか
0.1uFのコンデンサを入れてハード的に処理する方法もあるよ
2021/06/07(月) 18:38:57.13ID:Wsh7JyNf
>>880
10個のテクニックが盛り込まれた回答!
2021/06/07(月) 18:59:29.31ID:r9sBR9vf
>>876
分母自体は256
255を指定するとDigitalWriteのHIGHが呼び出される
なので254と255の間にパルス幅に1つ飛びがある
なんでこうなってるかはD7とD8の隙間50milと同じような設計上の問題
883876
垢版 |
2021/06/07(月) 19:29:00.53ID:0D0iRlBD
>>882
ありがとうございます
(i)指令値が0-254の場合:(指令値/256)×100 %
(ii)指令値が255の場合:100 %
ということですか。
厳密さが必要とされる場面では少し気を付けた方がいいかもしれませんね
勉強になりました
2021/06/07(月) 19:34:50.63ID:r9sBR9vf
>>883
ああ、この問題があるのはUnoで言うとD5とD6だけ(タイマー0がFast PWM Modeで使用)なので

D9とD10(タイマー1をPhase Correct PWM Modeで使用)
D3とD11(タイマー2をPhase Correct PWM Modeで使用)

についてはそのグリッチは無い(こちらは分母自体が255のため)

他のArduinoについては自分でコアのソースを見てくれ
885876
垢版 |
2021/06/07(月) 19:43:43.72ID:4w0tl3BI
>>884
ありがとうございます
私が使おうとしていたピンはUNOのD9-11なので場合分けはしなくて済みそうです
2021/06/07(月) 19:45:12.73ID:kSnPu7oS
それのせいでタイマー0に関しては自分で実装しないとanalogWriteでデューティ比50%は決して出せない
しかしタイマー0を弄るとmillsと(殆ど使わないがdelay)が死ぬ
887876
垢版 |
2021/06/07(月) 19:50:52.20ID:0D0iRlBD
>>886
タイマー0を使ったD5、D6なら分母が256なので128を指令すれば50%になる...という話ではないのですか?
2021/06/07(月) 19:52:43.73ID:r9sBR9vf
>>886
ん?逆じゃね・・・?
タイマー0を使うところは分母が256でタイマー1と2は255だから
50%が出せるのはむしろタイマー0のほうな気がする

analogWriteで127指定したらたぶんD5とD6はぴったり50%が出るけどD3,9,10,11は50.2:49.8くらいになるんじゃないかな・・・?たぶん
2021/06/07(月) 23:19:58.74ID:YymZm5Ks
>>880
全部やってみます。
ありがとうございます
2021/06/07(月) 23:24:55.83ID:QeMGa2xD
ちょっと気になったのでチェックしてみた
UNOにて analogWrite(127)で出力
https://i.imgur.com/uG8c4r7.png (D5,D6)
https://i.imgur.com/x8Hnghh.png (D3,D9,D10,D11)
888さんの言う通りの結果だった
2021/06/07(月) 23:32:19.42ID:HlWmycJ/
気になったらすぐ確認する人ステキよ…
2021/06/08(火) 00:12:12.37ID:UuQ5KsHO
>>890
D3の方は127/255で49.8%になるのはわかるんだけど、D5の方ではなぜ127/256がちょうど50%になるんだろう?
2021/06/08(火) 01:45:09.01ID:Hd83YI8f
>>892
D5,D6の場合(Fast PWM mode)
OCR0A=0; で強制的に0に設定したらHighの時間が0usではなく4usになった
OCR0A=1; この場合だとHighの時間8usでした OCR0A=127;なら512us
Timer0とOCR0Aの比較で一致した瞬間にLowではなくカウントアップ時にLowに変わるようです
2021/06/08(火) 07:56:18.36ID:nD00A5sz
高速PWMモードだと比較値が0のとき1パルス分の長さのHIGHが出るAVRの仕様
データシートの81ページの頭に書いてある
位相PWMモードだと0と255がそれぞれLOWとHIGHになる
データシートの82ページの上から2割位の所に書いてある

なぜタイマー0だけが高速PWMモードなのかというのは恐らくだけど
delayとmillis実装のための割込にも使っていてプリスケーラ1/64でTOP値0xFFの8bitタイマーなら
周波数が976.5625になるから1msのカウントを組みやすかったのかなと

かつそれでanalogWriteの値を他の位相PWMモードのと合わせようとした結果
分解能が1違うからdutyの端っこを2つ纏めることになってシワ寄せを受けている
2021/06/08(火) 07:57:48.84ID:nD00A5sz
ちなみに高速PWMモードだと出力を完全に止めるにはタイマーを止めるかポートの制御をタイマーから切り離すしかない
2021/06/08(火) 08:03:11.04ID:UuQ5KsHO
つまり
(i)D5,D6:((指令値+1)/256)×100 %
(ii)D3,D9,D10,D11:(指令値/255)×100 %
ってことでいい?
2021/06/08(火) 08:06:53.26ID:rlI/v40o
>>896
arduinoではanalogWriteの0と255はタイマから切り離してLo/Hiという特別な扱い
なのでD5とD6だけ式だけじゃ表せない(0のとき強制オフ)
2021/06/08(火) 08:40:36.29ID:UuQ5KsHO
>>897
では
(i)D5,D6
 (ia)指令値が0:0%
 (ib)指令値が1-255:((指令値+1)/256)×100 %
(ii)D3,D9,D10,D11:(指令値/255)×100 %
ならどうでしょう?
2021/06/08(火) 09:41:37.94ID:qgFPTZsF
>>898
ヨシ
2021/06/08(火) 10:25:03.34ID:UuQ5KsHO
>>899
ありがとう
スッキリした
2021/06/09(水) 19:01:44.14ID:s7O+DKhS
AC100V機器にリレーで電源供給するとI2Cのディスプレイ表示が瞬間的に
文字化けしたりするんだけど簡易な対策はありますか?
2021/06/09(水) 19:13:02.75ID:bfZOATLd
ない
2021/06/09(水) 19:20:41.63ID:4NsQz0Lp
フォトカプラで絶縁するとか
2021/06/09(水) 19:25:29.14ID:0j/cIyvw
通信ケーブルをシールドするとか
2021/06/09(水) 19:25:53.07ID:uh6tTlBX
まずは原因をある程度絞り込まないと
例えばリレーのコントロールをマイコンから外して直接オンオフしても発生するのかとか
AC側の機器があるのかないのかとか
電源ラインのノイズ対策をちゃんとしてるか?とかブレッドボードで怪しい接続のままなのか基板にしてるのかとか
2021/06/09(水) 19:39:25.03ID:TMcPzxTU
>>901
I2Cディスプレイの電源に1000uFと0.1uFのコンデンサをつけるとだいたい解決する
2021/06/09(水) 20:06:37.70ID:s7O+DKhS
>>906
試してみます!
2021/06/09(水) 20:52:04.55ID:s7O+DKhS
ちなみにモーター使う時みたいにリレーの電源両端に
パスコン入れるのは効果的でしょうか?
2021/06/09(水) 21:00:17.08ID:HEhjvFn3
やってみりゃいいじゃん
2021/06/09(水) 21:02:55.38ID:kWLZv54v
>>908
リレーのコイルにはダイオード、接点にはコンデンサ
2021/06/09(水) 21:16:39.03ID:kWLZv54v
回路はこんな感じ
https://i.imgur.com/LuZECxQ.png
2021/06/09(水) 21:22:19.16ID:s7O+DKhS
>>911
回路まで…
ありがとうございます!
2021/06/10(木) 00:37:13.15ID:kUNERqJ9
最近、arduinoをつかってみたのですが
デジタルピンをプルアップに設定して、内部プルアップ抵抗を使う事にして
ICから直でDIPスイッチに接続してるんですが、大丈夫ですよね?

ネットで見ると、プルアップで抵抗なしに
プルアップ設定で直結すると壊れるという記事もあるんですが・・・
とりあえず、書いたスケッチの動作確認では問題なく動作しております。

300〜10kΩ程度の抵抗をかますのが安全なのでしょうが、配線がゴチャゴチャするので
直結で問題なければこれで使いたいのですが・・・
2021/06/10(木) 00:38:35.02ID:CTV/YDuI
クロスフェードを7セグでやってみたいんだけど、よく分からない。ダイナミック点灯で4桁でやりたいんだけど、参考になるスケッチとか無いかな?
2021/06/10(木) 00:45:59.33ID:c+UyRN7q
>>913
プルアップで直結自体は大丈夫だけど
スケッチの間違いで出力設定(high)になったら最大定格を超える電流が流れて、故障や誤作動の原因になる
出力設定でもdigitalRead()は機能するので間違いに気づかない事も考えられる
保険の意味では抵抗を入れといた方が良い
2021/06/10(木) 01:17:11.91ID:cE3v7P0w
>>911
絶縁リレー回路が絶縁されてないじゃん
あとベース抵抗510Ωは小さすぎ
そしてベース - エミッタ間にも抵抗を入れるべき
2021/06/10(木) 01:29:40.99ID:yDKcUp2S
>>916
LEDが2個直列になってて3.0V必要な事は指摘しなくていいのか
別電源にすれば絶縁にはなるぞ
2021/06/10(木) 06:06:10.67ID:FXsw9wRP
プルアップとかプルダウンとかプルツーとか何言ってるかさっぱりわからん
2021/06/10(木) 06:08:25.18ID:FkV97N7S
アップルツーシー
2021/06/10(木) 08:57:54.44ID:cE3v7P0w
>>917
GNDが共通だから別電源用意しても絶縁されてないって指摘してるんだよ
リレーなんか使わずにオムロンとかのゼロクロス付きのSSRにすればいいのに
921912
垢版 |
2021/06/10(木) 18:16:55.22ID:cd56I7iV
リレーノイズの者です
コンデンサとダイオードを追加して無事に解決しました
アドバイスくれた方々に感謝
2021/06/12(土) 01:28:04.38ID:4fiLsoDD
iphone単独でスケッチの書き込みとか出来たら超捗るのに…
PC経由してリモートならあるんだよな確か
2021/06/12(土) 20:14:43.54ID:qPtRvsDH
>>915
ありがとう
保険で抵抗つけときます
人にあげる可能性もあるし
2021/06/13(日) 14:24:46.45ID:9SnZIFPu
I2CのEEPROM(24LC256)への書き込みの質問です

Wire.beginTransmission(deviceaddress);
Wire.write(eeaddress >> 8); // MSB of EEPROM Address
Wire.write(eeaddress & 0xFF); // LSB of EEPROM Address
Wire.write(data, length);
Wire.endTransmission();

length = 8byteまではうまく書き込めるのですが、
もしかして最大8byte単位という制限がありますか。
2021/06/13(日) 14:55:41.84ID:9SnZIFPu
連投すみません。ページをまたがった連続書き込みはできないということに気が付いていませんでした。
一旦、質問を引かせていただき、自分で試してみます。
2021/06/13(日) 16:00:30.88ID:9SnZIFPu
ググって探せました。
1. EEPROMは通常64アドレス分が1ページになっている(モデルによって違う)
2. Wire.write(data, length);でページをまたがった書き込みは出来ない
64byte以上の配列を書き込む時は上記の考慮が必要でした。
2021/06/14(月) 17:20:33.94ID:wgRpgKFd
i2c接続で、EEPROM、OLEDまではよかったんだけど、PSoCをSlaveでぶら下げたらら、PSoCのレジストリには書き込めません。
I2Cのアドレスは0x08でかぶってないハズです。
EEPROM、OLEDの部分を外して、Arduino対PSoC単体では、書込み出来てます。

漠然としてますが、どこから手をつけたらいいのか、アドバイスが欲しくて。
OLEDライブラリはu8x8とかいうものです。
2021/06/14(月) 17:36:21.18ID:LRPSoJC7
>>927
浮遊容量が大きくなり、プルアップ抵抗を小さくしないといけないかも
2021/06/14(月) 17:54:15.13ID:2OoLTOrL
>>928
今晩やってみます!
ありがとうです!
2021/06/14(月) 20:08:41.63ID:u8XJ1ONR
アナライザがあったのでつなげてみました。
正常動作時は下記でした。(A)
write to 0x08 ack data: 0x20 0x01 0x01
write to 0x08 ack data: 0x20 0x02 0x02
write to 0x08 ack data: 0x20 0x03 0x03
write to 0x08 ack data: 0x20 0x04 0x04

NGの時は下記です。(B)
write to 0x08 nak
write to 0x08 nak
write to 0x08 nak
write to 0x08 nak

(A)の時も(B)の時もハード構成は同じですがスケッチが異なり、
(A)はPSoCとの通信のみの最小構成にしています。
PSoC側のプログラムは(A)も(B)も同じです。

プログラムは(A)と(B)で異なるのですが、
同じコマンドが同じ順番に並べているつもりでいます。

Wire.begin();
の後に
Wire.beginTransmission(PSoC_SLAVE_ADDRESS);
Wire.write(cmd, sizeof(cmd));
Wire.endTransmission();
Delay(30); <- これいじっても変わりませんでした。
を4回繰り返しています。

これで、どういう状況かご想像出来ますか?
2021/06/14(月) 21:43:57.76ID:u8XJ1ONR
連投すみません。
u8x8.setBusClock(100000);
が必要でした。ちゃんとライブラリ説明のところを見ていませんでした。
結果、i2cバスは400kHzで動作しており100kHzと思っているPSoCは間違った認識をしていたようです。
2021/06/15(火) 03:49:51.98ID:jPvICB/M
PSoCかぁ… 面白そうだな…
ぼくもやってみるかRTOSとか…
2021/06/15(火) 10:50:35.42ID:ibY/Xl9/
arduinoのプログラムって繰り返しだけど
1周どのくらい時間かかるの?
ディレイとかwhile?とか考慮しないで
プログラムの大きさもあるだろうけどまあざっくりで
2021/06/15(火) 10:56:42.20ID:I2erDJPw
>>933
1秒間で地球7回り半
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況