月度归档:2025年01月

大夏龙雀 LORA01 LORA03

大夏龙雀家的这两个LORA模块,01 模块22dbm,最大8KM, 03模块 27dbm,最大10KM。可以使用UART操作,默认比特率9600

3个模式 ,AT+MODE0 AT+MODE1 AT+MODE2 ;共31个信道 从00到1E。

1.透明传输 最简单,可以直接使用,仅用level来区分,请尽量保持两模块间同一信道。

2.点对点,2字节地址码,1字节信道码(),再加level速率匹配。传输时 地址信道数据

坑点:发送数据必须以16位hex发送,直接怼字符串不行的且必须是,两个hex对应一个字节,所以必须双数。

3.广播模式,对同一信道下的模块进行广播。传输时 信道数据

坑点:与点对点类似 必须Hex格式哦。

Thinkphp模型中使用分页paginate ;thinkCMF6

基础版本:
控制器

    $csc=$topics->alias("a")
            ->leftJoin("meeting b","b.id=a.meeting_id")
            ->join("topics_own c","c.tid=a.id")
            ->join("upleader d","d.id=c.upid")
            ->where($where)->field("a.*")
            ->order("status")
            ->order("b.date desc")
            ->group("a.id")
            ->field("a.*,count(*) as count")
            ->paginate(10);
 $csc->appends($this->request->param());
 $this->assign(["list"=>$csc,"user"=>$this->user_info()]);
#$csc为传入分页信息、控制每页显示设置为10,若要其他数目请另外设置

模板

    <div class="row text-center">
        <div class="pagination">{$info->render()}</div>
        <p class="text-muted">---共计<b class="text-danger">{$info->total()}</b>条---</p>
    </div>

模型创建:

<?php
namespace app\model;

use think\Model;

class User extends Model
{
    protected $table = 'users';

    // 添加一个方法用于获取分页数据
    public static function getPaginatedData($pageSize = 10)
    {
        return self::paginate($pageSize, false, ['query' => request()->param()]);
    }
}

控制器调用

<?php
namespace app\controller;

use app\model\User;
use think\facade\Request;

class UserController
{
    public function index()
    {
        // 获取分页数据
        $pageSize = Request::param('pageSize', 10); // 可以通过请求动态获取每页显示条数
        $users = User::getPaginatedData($pageSize);

        // 返回视图并传递分页数据
        return view('user/index', ['users' => $users]);
    }
}

LLM的不成熟见解

通过模拟人类的多感官输入和多样化的输出机制,让大型语言模型(LLM)能够更接近人类的思维模式,从而实现更有效的思考、自训练和自我更新。

人之所以成为人,在于不断思考,不断的接受和处理外部信息。

但是目前我接触到的LLM是基于对话交互,所以只有当人给予对话作为输入时才会有相应的反馈。对于这样的反应,压根就不是人类的情况,哪有人会这样只有一个接受渠道,再一个反馈渠道,就是一个输入输出的机器。

因此,我的理解是要对其加入不断输入输出的情况。可以把现场的情况(电压,功率,剩余电量,开机时间,温湿度,当天的天气情况,现场周围的声音,图片等等输入,达到模拟感官:视觉 听觉 嗅觉 触觉 等等),然后有个输出机制,可以输出到文档,或者数据库等等,或者让LLM自己决定。不断的输入输出,相当于不断的思考,但是思考是会有成果的,可以再结合上面的输入输出以及对话的输入输出,进行自训练,以达到成为人的思维。

不断思考,不断进步(训练或者微调),更新自我。

LCD2004 LCD1602 设计模式

https://bgithub.xyz/liyuanhe211/Micropython_LCD1602_LCD2004_I2C_Lib

其中可以创建自己想要的图形,这个图形是7×5 像素的图标。

# -*- coding: utf-8 -*-
__author__ = 'LiYuanhe'

from machine import Pin, Signal, SoftI2C
import time
import socket
import machine
import network
import micropython
import os
from lib_lcd1602_2004_with_i2c import LCD

micropython.alloc_emergency_exception_buf(100)

scl_pin = 26
sda_pin = 27
lcd = LCD(SoftI2C(scl=Pin(scl_pin), sda=Pin(sda_pin), freq=100000))

custom_char_0 = [
  0b00000,
  0b00000,
  0b00000,
  0b00000,
  0b00000,
  0b00000,
  0b00001,
  0b00011]

custom_char_1 = [
  0b00111,
  0b00111,
  0b01110,
  0b01110,
  0b01110,
  0b11110,
  0b11111,
  0b11111]

custom_char_2 = [
  0b00000,
  0b00001,
  0b00111,
  0b01111,
  0b11111,
  0b11110,
  0b11000,
  0b10000]

custom_char_3 = [
  0b00000,
  0b00000,
  0b00000,
  0b00000,
  0b00000,
  0b00000,
  0b11111,
  0b11111]

custom_char_4 = [
  0b01111,
  0b11111,
  0b11111,
  0b11000,
  0b00000,
  0b00000,
  0b00000,
  0b00000]

custom_char_5 = [
  0b11100,
  0b11110,
  0b11111,
  0b00011,
  0b00001,
  0b00000,
  0b00000,
  0b00000]

custom_char_6 = [
  0b00000,
  0b00000,
  0b10000,
  0b11100,
  0b11110,
  0b01111,
  0b00111,
  0b00011]

custom_char_7 = [
  0b11000,
  0b11000,
  0b11100,
  0b11100,
  0b11100,
  0b11110,
  0b11110,
  0b11110]


lcd.create_charactor(0,custom_char_0)
lcd.create_charactor(1,custom_char_1)
lcd.create_charactor(2,custom_char_2)
lcd.create_charactor(3,custom_char_3)
lcd.create_charactor(4,custom_char_4)
lcd.create_charactor(5,custom_char_5)
lcd.create_charactor(6,custom_char_6)
lcd.create_charactor(7,custom_char_7)

top = chr(0)+chr(2)+chr(4)+chr(5)+chr(6)+' '
down = chr(1)+chr(3)+chr(3)+chr(3)+chr(3)+chr(7)
count=0
while True:
    line1 = " "*count + top + (16-count-6)*' '
    line2 = " "*count + down + (16-count-6)*' '
    count+=1
    lcd.puts(line1,0)
    lcd.puts(line2,1)
    time.sleep(0.3)
    if count==11:
        break

line1 = " LCD1602  " + top
line2 = "Custom chr" + down
lcd.puts(line1,0)
lcd.puts(line2,1)

windows 硬盘备份【windows 运维】

windows server 2008 需要先添加 windows server backup 的功能。

添加 windows server backup 功能

1.服务器管理器》功能》添加功能(在右侧)》windows server backup 的选项打上勾。》完成

就会出现在 存储 栏目下出现 windows server backup

之后点击windows server backup ,按照其步骤上面创建备份。

但是需要注意:
需要在两台服务器上创建两个账户,且账户名称必须一样,若账户名称为backup,则需要备份机器 必须为 管理员 backup,存储备份机器 backup 账户 普通用户即可,且密码必须一致,

其中选项 网络备份全部传输 (即更新全部,相当于刷新存储)。

备份文件格式为VHD,可以到处到其他服务器上进行挂载(磁盘管理中挂载VHD文件),在内网1Gbps下每分钟0.8GB数据,比直接SMB复制快点。