sync notes(auto)

This commit is contained in:
Kaz Saita(raspi4) 2024-03-18 15:15:02 +09:00
parent a9d917dec3
commit 8ea5312186
2 changed files with 70 additions and 5 deletions

View file

@ -5,21 +5,23 @@
### LM358
とりあえず使っとけ的な場合
pros:
- pros:
- 定番中の定番
cons:
- cons:
- Rail-to-Railではないので5Vや3.3Vだとレンジが狭い
- LCLSC [LM358 MSKSEMI | C5252902 - LCSC Electronics](https://www.lcsc.com/product-detail/Operational-Amplifier_MSKSEMI-LM358_C5252902.html)
- 秋月で買える [2回路入汎用オペアンプ STマイクロ製 LM358N: 半導体 秋月電子通商-電子部品・ネット通販](http://akizukidenshi.com/catalog/g/gI-11167/)
### LMV358
5V程度で、とりあえず使っとけ的な場合。
pros:
- pros:
- 定番のLM358と近い使用感でRail-to-Railになっているため、5Vとか3.3Vのマイコン工作で使いやすい
cons:
- cons:
- 定格電圧が5.5Vなので12Vなどのオーディオ用途には向かない
LM358と型番近いがRail-to-Rail。 電圧の定格が最大5.5Vなど、チョイチョイ違う。
- [LMV358 のデータシート、製品情報、およびサポート | TI.com](https://www.ti.com/product/ja-jp/LMV358)

View file

@ -0,0 +1,63 @@
# 20240318114756 raspi4 guileのインストール
#tech #raspi4
```
$ sudo apt install guile-3.0 guile-3.0-libs guile-3.0-dev
```
## slibのインストールと設定
20240318 に raspberry pi OSのbookworm で試したところ、guile3に対応していないバージョンだったため、手動でインストールする。
```
$ sudo apt install slib
```
raspberry pi OSの場合、インストールされる先は `/usr/share/slib/`
ンストール先を`SCHEME_LIBRARY_PATH` として環境変数に追加。
下記を ~/.profileに追加
```
export SCHEME_LIBRARY_PATH=/usr/share/slib/
```
slibは実装ごとにslibcatなるカタログファイルが必要。下記の手順で生成。
```
$ sudo mkdir -p /usr/share/guile/site/3.0
$ sudo touch /usr/share/guile/site/3.0/slibcat
$ sudo chmod a+rw /usr/share/guile/site/3.0/slibcat
$ sudo guile
GNU Guile 3.0.8
Copyright (C) 1995-2021 Free Software Foundation, Inc.
Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.
Enter `,help' for help.
scheme@(guile-user)> (use-modules (ice-9 slib))
scheme@(guile-user)> (require 'new-catalog)
scheme@(guile-user)> (quit)
```
この後、通常ユーザーで
```
$ guile
.
.
.
$ scheme@(guile-user)> (use-modules (ice-9 slib))
```
をしてエラーが発生、 `"WARNING: compilation of /usr/share/slib/guile.init failed:"` などと表示されることがあったが、再現しなくなってしまった。 `SCHEME_LIBRARY_PATH` の反映ができていなかったかもしれない。
動作確認
```scm
$ guile
$ (use-modules (ice-9 slib))
$ (require 'primes)
...
$ (prime? 13)
$ $1 = #t
```
とかなっていればOK。
## Ref.
- [The SLIB Portable Scheme Library](https://people.csail.mit.edu/jaffer/SLIB.html)
- [SLIB (Guile Reference Manual)](https://www.gnu.org/software/guile/manual/html_node/SLIB.html)
- [SLIB installation (Guile Reference Manual)](https://www.gnu.org/software/guile/manual/html_node/SLIB-installation.html)