Skip to content

Instantly share code, notes, and snippets.

mipsparc mipsparc

Block or report user

Report or block mipsparc

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@mipsparc
mipsparc / FREQROL.py
Created Dec 4, 2018
三菱電機のインバータ FREQROLをPythonとRS485で動かすやつ。MITライセンス。安全にはまったく配慮していないので、十分気をつけてください。
View FREQROL.py
#! /usr/bin/env python3
#coding:utf-8
import serial
import time
class FREQROL:
def __init__(self):
self.ser = serial.Serial(
port='/dev/ttyUSB0', # ここをRS485デバイスに書き換える。COM0など
@mipsparc
mipsparc / break_reader.c
Created Dec 2, 2018
ブレーキ統合ユニットからボタンやブレーキハンドル角度を読み出すやつ
View break_reader.c
#include "mcc_generated_files/mcc.h"
void main(void)
{
// initialize the device
SYSTEM_Initialize();
// Enable the Global Interrupts
INTERRUPT_GlobalInterruptEnable();
@mipsparc
mipsparc / osc.c
Created Oct 28, 2018
ハンドメイド電子回路「連絡ブザくん」ソースコード。波形データを入れ替えると、任意波形が発生できるぞ!
View osc.c
#include "mcc_generated_files/mcc.h"
void setNextLevel(void);
unsigned char curve1[] = {
39, 40, 26, 56, 39, 14, 58, 34, 46, 47, 39, 44, 37, 34, 37, 32, 28,
39, 38, 39, 47, 45, 42, 45, 40, 37, 37, 29, 39, 39, 32, 45, 45, 37,
39, 37, 37, 36, 34, 38, 39, 43, 46, 42, 42, 41, 38, 37, 40, 36, 34,
37, 37, 37, 41,
};
View mascon_read.py
#coding:utf-8
import serial
device = '/dev/ttyUSB0'
ser = serial.Serial(device, baudrate=9600)
mascon_level = -1 # init
static_mascon_level = -1 # init
buttons = -1;
View adding_up_to_16_3.asm
__CONFIG 0x8007, 0xFFA4
ORG 0
RAMTOP
MOVLB 0x1
MOVLW b'00010010'
MOVWF 0x99
CLRF 0x8E
MOVLB 0x3
@mipsparc
mipsparc / adding_up_to_16_2.asm
Created Jun 2, 2018
1から16まで足し上げるアセンブリを、動かしやすいようにした。実機での動作確認。
View adding_up_to_16_2.asm
#include "p16f1579.inc"
; CONFIG1
; __config 0xFFA4
__CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOREN_ON & _CLKOUTEN_OFF
; CONFIG2
; __config 0xDEFF
__CONFIG _CONFIG2, _WRT_OFF & _PPS1WAY_ON & _PLLEN_OFF & _STVREN_ON & _BORV_LO & _LPBOREN_OFF & _LVP_OFF
ORG 0
@mipsparc
mipsparc / adding_up_to_16.asm
Created May 25, 2018
1から16まで足していくだけのPIC向けアセンブリ
View adding_up_to_16.asm
ORG 0
RAMTOP
CLRF 0x20
CLRW
CALC
INCF 0x20
ADDWF 0x20, 0
BTFSS 0x20, 4
@mipsparc
mipsparc / scroll.asm
Created May 25, 2018
0x20に入ったビットがスクロールするだけのPIC向けアセンブリ
View scroll.asm
ORG 0
RAMTOP
CLRF 0x20
INCF 0x20, 1
LOOP
RLF 0x20, 1
GOTO LOOP
@mipsparc
mipsparc / pwm_controller.c
Created May 19, 2018
PWM制御鉄道模型コントローラの試作品の制御用PIC16F1向けプログラム。シリアルで入力されたDuty ratioで駆動する。Microchip MCCで生成されたハードウェア制御用メソッドを呼び出している
View pwm_controller.c
#include "mcc_generated_files/mcc.h"
#include <stdio.h>
void move(unsigned char direction)
{
if (direction == 1) {
PWM1_DutyCycleSet(639);
PWM1_LoadBufferSet();
} else {
@mipsparc
mipsparc / mascon_read.c
Last active Dec 2, 2018
DE10/DE15に使用されるMC45A主幹制御器などからノッチを読み取るやつ(PIC16F1579向け)
View mascon_read.c
// PIC16F1579 Configuration Bit Settings
// CONFIG1
#pragma config FOSC = INTOSC // Oscillator Selection Bits (INTOSC oscillator; I/O function on CLKIN pin)
#pragma config WDTE = OFF // Watchdog Timer Enable (WDT disabled)
#pragma config PWRTE = ON // Power-up Timer Enable (PWRT enabled)
#pragma config MCLRE = OFF // MCLR Pin Function Select (MCLR/VPP pin function is digital input)
#pragma config CP = OFF // Flash Program Memory Code Protection (Program memory code protection is disabled)
#pragma config BOREN = ON // Brown-out Reset Enable (Brown-out Reset enabled)
#pragma config CLKOUTEN = OFF // Clock Out Enable (CLKOUT function is disabled. I/O or oscillator function on the CLKOUT pin)
You can’t perform that action at this time.