Skip to content

Instantly share code, notes, and snippets.

View kamiyaowl's full-sized avatar
🤔
:thinking_face:

Kamiya kamiyaowl

🤔
:thinking_face:
View GitHub Profile
@kamiyaowl
kamiyaowl / Program.cs
Last active September 8, 2022 18:53
C# + OpenTK.Audio.OpenAL sample
using OpenTK;
using OpenTK.Audio.OpenAL;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication4 {
class Program {
/************************************************************************
M5StackFire I2C Scanner
The M5StackFire has a connector for I2C devices.
This program scans the addresses 1-127 continuosly and shows
the devices found on the TFT.
The M5Stack fire has two internal I2C devices at address 0x68 and 0x75.
@kamiyaowl
kamiyaowl / compressor_on_pynq_z2.py
Last active January 29, 2020 16:59
PYNQ-Z2のPython上でコンプレッサーを実装してみた https://twitter.com/kamiya_owl/status/1221425698029498368
from pynq.overlays.base import BaseOverlay
base = BaseOverlay("base.bit", download=False)
# あとでグラフに書きたい場合はtrue
is_debug_capture = True
l_src_arr = []
r_src_arr = []
l_dst_arr = []
r_dst_arr = []
// select_line_in()呼び出し時にTX Buffから音声出力できるようにレジスタ設定を書き込んでおく
/******************************************************************************
* Function to select LINE_IN as input.
* @param iic_index is the i2c index in /dev list.
* @return none.
*****************************************************************************/
extern "C" void select_line_in(int iic_index) {
int iic_fd;
iic_fd = setI2C(iic_index, IIC_SLAVE_ADDR);
# %matplotlib inline
import matplotlib.pyplot as plt
from ipywidgets import *
plt.rcParams['figure.figsize'] = (15.0, 10.0)
from pynq.overlays.base import BaseOverlay
base = BaseOverlay("base.bit")
# 2の補数の扱い辛い
def twos_complement(hexstr,bits):
@kamiyaowl
kamiyaowl / Tsp.scala
Created April 13, 2014 09:00
travering salesman problem : depth first search with scala
import scala.io.Source
object City {
private def randoms(m:Int) : Stream[Int] = Stream.cons(scala.util.Random.nextInt(m), randoms(m))
def create(count:Int)(implicit max:Int) = randoms(max).zip(randoms(max)).take(count).zipWithIndex.map(x => x._2 -> x._1).toMap
}
implicit class CsvConverter(filepath: String) {
//Map[Int,(Int,Int)] : Index -> (X, Y)
def toCities = Source.fromFile(filepath).getLines.toSeq.map(x => x.split(",")).filter(_.size == 2).map(x => (x(0).toInt, x(1).toInt)).zipWithIndex.map(x => x._2 -> x._1).toMap
}
#include <iostream>
#include <string>
#include <vector>
#include <stack>
#include <stdint.h>
using namespace std;
int main() {
vector<uint8_t> mem(30000,0);
stack<int> branchStack;
@kamiyaowl
kamiyaowl / dmx_receiver.c
Last active January 25, 2019 09:13
dmx receive for avr
/*
* dmx_receiver.c
*
* Created: 2014/07/15 19:43:52
* Author: kamiya
*/
#include <avr/io.h>
#include <avr/interrupt.h>
#include "dmx_receiver.h"
@kamiyaowl
kamiyaowl / gke-cronjob.yml
Created July 18, 2018 13:41
Kubernetes cronjob
apiVersion: "batch/v1beta1"
kind: CronJob
metadata:
name: "<workload-name>"
namespace: "default"
labels:
app: "app-label"
spec:
schedule: "0 */4 * * *"
startingDeadlineSeconds: 120
@kamiyaowl
kamiyaowl / CsvRead.cs
Created April 5, 2014 15:27
c# read csv
using System;
using System.Linq;
using System.IO;
using System.Text;
using System.Collections.Generic;
static class Extension {
public static IEnumerable<int> CreateSource(this string[] src) {
return src.SelectMany(x => x.Split(',')).Where(x => !string.IsNullOrWhiteSpace(x)).Select(x => int.Parse(x));
}