Lispと一緒(18) ラズパイPico2でもuLisp、配列、array

make_arrayEC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回は配列、arrayを練習してみます。今回はCommon LispとuLispの差というより、処理系依存な部分がちょいと見えましたかな。まあ、注意してたらその差は見えないような使い方は十分できそうな気がするけど(個人の感想デス。)

“Lispと一緒(18) ラズパイPico2でもuLisp、配列、array” の続きを読む

Pico三昧(42) ラズパイPico2:RP2350、Pico:RP2040、I2C比較

Joseph Halfmoon

前回はUARTでした。今回はI2Cです。今回も前回と同じようなことを書きます。RP2040でもRP2350でも搭載しているユニット数は2個。前回同様に微妙な相違です。その差は前回よりも小さいです。前回はまだRP2040で使えなかった端子がRP2350では使えるとか御利益があったですが、今回はフツーにしてたら何もない? “Pico三昧(42) ラズパイPico2:RP2350、Pico:RP2040、I2C比較” の続きを読む

ぐだぐだ低レベルプログラミング(188)x86(16bit)、セグメンテーションその1

realModeSegmentation
Joseph Halfmoon

ことさらにMOVなど転送命令を避けて今回に至ります。流石にこの辺で悪名高い x86 のセグメンテーションについて説明しておく必要を認めました。そこで今回はリアルモードのセグメンテーションの図解といたします。まあセグメンテーションといいつつ、そのうちやるつもりのプロテクテッド・モードのそれに比べりゃ可愛いもんだけれども。
“ぐだぐだ低レベルプログラミング(188)x86(16bit)、セグメンテーションその1” の続きを読む

Lispと一緒(17) ラズパイPico2でもuLisp、整数ビット演算

uLisp_logbitp
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中。今回は整数のビット演算系の関数を練習してみます。Common Lispではboole関数とlogで始まる関数どもで似た処理が可能。uLispではlogで始まる関数のみ存在します。その範囲であれば「概ね」差は見えにくいです。

“Lispと一緒(17) ラズパイPico2でもuLisp、整数ビット演算” の続きを読む

Pico三昧(41) ラズパイPico2:RP2350、Pico:RP2040、UART比較

Joseph Halfmoon

前回GPIOの「違い」を眺めました。今回はUARTです。RP2040でもRP2350でも、搭載しているUARTのユニット数は2個。Arm社のIPであるArm PrimeCell UARTのまったく同じバージョンを搭載してます。「相違なんかない」と思いきや、「IPの外側で」微妙に差別化?してました。コマケー話なんだが。
“Pico三昧(41) ラズパイPico2:RP2350、Pico:RP2040、UART比較” の続きを読む

Lispと一緒(16) ラズパイPico2でもuLisp、文字列関連関数

concatenateEC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。前回文字列を扱う関数を練習したので、今回は文字列やリスト、あるいは文字列を数値に変換するような関数をいくつか練習してみます。前回はCommon LispとuLispの間に差はなかったですが、今回はいろいろあります。仕方ねえ。

“Lispと一緒(16) ラズパイPico2でもuLisp、文字列関連関数” の続きを読む

Pico三昧(40) ラズパイPico2:RP2350、Pico:RP2040、GPIO比較

Joseph Halfmoon

過去回で何度も登場しているGPIOです。しかしRP2040とRP2350のGPIO機能をとりだして比較してなかったです。そこで今回は2チップのGPIO機能を表にして比べてみました。概ね「似たようなもん」ということで使えるのではないかと思います。しかし細かく見るとRP2350の方はいろいろと機能強化されています。 “Pico三昧(40) ラズパイPico2:RP2350、Pico:RP2040、GPIO比較” の続きを読む

Lispと一緒(15) ラズパイPico2でもuLisp、文字と文字列

uLisp_string_eq
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。前回までで算術演算系の関数どもはひと段落。今回は、文字と文字列を扱うものどもです。Common Lispでは多数ある関数どもが uLisp ではこじんまりとした数です。必要最小限?知らんけれども。いくつかは既に練習済じゃと。 “Lispと一緒(15) ラズパイPico2でもuLisp、文字と文字列” の続きを読む

Pico三昧(39) ラズパイPico2:RP2350、Pico:RP2040、PWM比較

Joseph Halfmoon

今回は周辺回路PWMです。他のマイコンではタイマに付属するIO機能として実装されることが多いです。Pico系ではタイマとは独立、IO制御専用です。PWMという呼称ですが、PWM出力以外に入力信号のカウント機能によりパルス幅、周期の測定も可能。なおPicoとPico2での差はチャネル数と割り込みくらいかと。そんなもん?

“Pico三昧(39) ラズパイPico2:RP2350、Pico:RP2040、PWM比較” の続きを読む

Lispと一緒(14) ラズパイPico2でもuLisp、大小比較

uLisp_numeq_noteq
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。前回まで算術演算系の関数どもを練習してきましたが、今回の「大小比較」で一段落かと。前回はコマケー話で、Common LispとuLispの違いが見えてしまいましたが、今回は平穏無事、波風立たず。

“Lispと一緒(14) ラズパイPico2でもuLisp、大小比較” の続きを読む

Pico三昧(38) ラズパイPico2:RP2350、Pico:RP2040、リセット比較

Joseph Halfmoon

前回はクロックでした、今回はリセットです。クロックとかリセットとか一番最初にやるでしょ、というところ。PicoとPico2を調べ始めた最初の方で外部端子ということでちょいと触れていたので詳細は後回しになってました。しかしPico2はPicoの方式を踏襲して拡張してますがケッコー複雑。元のPicoから複雑だと。
“Pico三昧(38) ラズパイPico2:RP2350、Pico:RP2040、リセット比較” の続きを読む

Lispと一緒(13) ラズパイPico2でもuLisp、乱数、最大最小、丸め系?

CeilingEC
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。前回は指数、対数系の演算関数を練習。計算精度を除けばCommon lisp とuLispに違いなし、平穏無事。今回は、乱数、最大最小、丸めなどやってみます。概ね一緒ではあるものの、コマケー違いがあるんだ、今回は。
“Lispと一緒(13) ラズパイPico2でもuLisp、乱数、最大最小、丸め系?” の続きを読む

Pico三昧(37) ラズパイPico2:RP2350、Pico:RP2040、クロック比較

Joseph Halfmoon

過去回で端子を調べたときにクロック源なども眺めたのでとっくに「やったような気」になっていたのですが、前回タイマ見て、肝心のクロックについて調べが足らないことに思い至りました。今回は外部端子から発振器、PLL、CGとその分配について改めて見ていきたいと思います。遠くからみると似たようなモン、だけれど随分と違うところあり。
“Pico三昧(37) ラズパイPico2:RP2350、Pico:RP2040、クロック比較” の続きを読む

Lispと一緒(12) ラズパイPico2でもuLisp、算術演算、指数、対数系?

uLispExpt
Joseph Halfmoon

Common Lispの系譜を継ぐマイコン上のuLispをラズパイPico2上で練習中です。uLispにおいては浮動小数点数は extensions という位置づけですが、FPUを備えているPico2にはなんでもありません?前回は三角関数など練習。今回は指数、対数系です。今回は平穏無事な感じ。目くじらたてることもなし。

“Lispと一緒(12) ラズパイPico2でもuLisp、算術演算、指数、対数系?” の続きを読む